aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2006-08-27[PATCH] dm: Fix deadlock under high i/o load in raid1 setup.Daniel Kobras
On an nForce4-equipped machine with two SATA disk in raid1 setup using dmraid, we experienced frequent deadlock of the system under high i/o load. 'cat /dev/zero > ~/zero' was the most reliable way to reproduce them: Randomly after a few GB, 'cp' would be left in 'D' state along with kjournald and kmirrord. The functions cp and kjournald were blocked in did vary, but kmirrord's wchan always pointed to 'mempool_alloc()'. We've seen this pattern on 2.6.15 and 2.6.17 kernels. http://lkml.org/lkml/2005/4/20/142 indicates that this problem has been around even before. So much for the facts, here's my interpretation: mempool_alloc() first tries to atomically allocate the requested memory, or falls back to hand out preallocated chunks from the mempool. If both fail, it puts the calling process (kmirrord in this case) on a private waitqueue until somebody refills the pool. Where the only 'somebody' is kmirrord itself, so we have a deadlock. I worked around this problem by falling back to a (blocking) kmalloc when before kmirrord would have ended up on the waitqueue. This defeats part of the benefits of using the mempool, but at least keeps the system running. And it could be done with a two-line change. Note that mempool_alloc() clears the GFP_NOIO flag internally, and only uses it to decide whether to wait or return an error if immediate allocation fails, so the attached patch doesn't change behaviour in the non-deadlocking case. Path is against current git (2.6.18-rc4), but should apply to earlier versions as well. I've tested on 2.6.15, where this patch makes the difference between random lockup and a stable system. Signed-off-by: Daniel Kobras <kobras@linux.de> Acked-by: Alasdair G Kergon <agk@redhat.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-27[PATCH] drivers/rtc: fix rtc-s3c.cBen Dooks
In the cleanups of drivers/rtc/s3c-rtc.c, the base address for the registers got broken. This patch fixes that by ensuring the readb/writeb are all prefixed with the base returned from ioremap()ing the registers. Also fix check for valid year range, which was the wrong way around. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-08-26[PATCH] unusual_devs update for UCR-61S2BAlan Stern
The existing unusual_devs entry for the UCR-61S2B appears to have too wide a revision range. It matches at least one device that doesn't respond to the initialization sequence. Perhaps the sequence needs to be updated, or perhaps something else can be done. For now, this patch (as764) restricts the range to include only the revision mentioned in the original comment. This resolves (for now!) Bugzilla entry #6950. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] USB: pl2303: removed support for OTi's DKU-5 clone cableTomasz Kazmierczak
This patch removes support for a clone of Nokia DKU-5 cable made by Ours Technology Inc, as it turned out that the cable does not use the pl2303 chip, but OTI-6858 chip which is not compatible with the pl2303. Signed-off-by: Tomasz Kazmierczak <tomek.fizyk@op.pl> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] USB: fix bug in cypress_cy7c63.c driverGreg Kroah-Hartman
This was pointed out by Adrian Bunk <bunk@stusta.de>, as found by the Coverity Checker. Cc: Adrian Bunk <bunk@stusta.de> Cc: Oliver Bock <o.bock@fh-wolfenbuettel.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] PCI: kerneldoc correction in pci-driverHenrik Kretzschmar
Removes an unused kerneldoc entry from pci_match_device and put the others into correct order. Signed-off-by: Henrik Kretzschmar <henne@nachtwindheim.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] CPCI hotplug: fix resource assignmentScott Murray
Here is a patch against the CPCI hotplug core to fix up PCI resource assignment such that things will actually work when a hot inserted device is enabled. I mentioned this patch to you way back in April at ELC, but am only now out from under things enough to clean it up and submit it. I've basically cribbed the corresponding code from shpchp_pci.c, so there are no big surprises. If it's still possible, I wouldn't mind this going into 2.6.18, but it wouldn't be the end of the world if it went into 2.6.19. Signed-off-by: Scott Murray <scottm@somanetworks.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] PCI: fix ICH6 quirksDaniel Ritz
- add the ICH6(R) LPC to the ICH6 ACPI quirks. currently only the ICH6-M is handled. [ PCI_DEVICE_ID_INTEL_ICH6_1 is the ICH6-M LPC, ICH6_0 is the ICH6(R) ] - remove the wrong quirk calling asus_hides_smbus_lpc() for ICH6. the register modified in asus_hides_smbus_lpc() has a different meaning in ICH6. Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch> Acked-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] hwmon: abituguru timeout fixesHans de Goede
This patch contains 2 sets of fixes for the abituguru: 1) Much improved timeout handling, drasticly reducing the amount of timeout errors on some motherboards 2) Fix the exit paths in the bank1 sensor type detect code to always restore the original settings even on an error. Without this our special test settings could remain seriously confusing the system BIOS's setup menu. Both are very much related and are must haves, to avoid messing up the uguru CMOS settings. Detailed changes: - Much improved timeout / wait for status handling. Many thanks to Sunil Kumar, for all his testing, ideas and patches! The code now first busy waits, polling the uguru for the expected status as this usually succeeds pretty quickly (within 90 reads). To avoid unnecessary CPU burn in timeout conditions, the amount of busy waiting has been halved from previous versions (120 tries instead of 250). This is not a problem, because this version goes to sleep after 120 attemps for 1 jiffy and then tries again, it does this sleep and try again 5 times before finally giving up. This (almost?) completly removes the timeout errors some people have seen regulary. Apparently some older uguru versions sometimes are distracted for a (relatively) long time. This solves this. - These timeout errors not only occur in the sending address part of reading the uguru but also in the wait for read state, so errors in this state are now handled as retryable just like send address state errors and are only logged and reported to userspace if 3 executive tries fail. - Fix a very nasty bug in the bank1 sensor type detection code, where it would not restore the original settings in any of the error paths! - Since not successfully restoring the original settings can seriously confuse the system BIOS (hang when entering the relevant setup menu), we now try restoring them 3 times before giving up. Signed-off-by: Hans de Goede <j.w.r.degoede@hhs.nl> Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26[PATCH] i2c: tps65010 build fixesDavid Brownell
The tps65010.c driver in the main tree never got updated with build fixes since the last batch of I2C driver changes; and the genirq trigger flags were updated wierdly too. This also includes a minor tweak to reduce the frequency used to poll for unplug-the-AC-power on the TPS chips that don't provide relevant IRQs. It _would_ be nice to sense whether there's even a battery, but that'd normally be an HDQ/1-wire interface to a smart battery, and such APIs aren't standardized. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2006-08-26Merge gregkh@master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6Greg Kroah-Hartman
2006-08-26[SCSI] fix scsi_send_eh_cmnd regressionMike Christie
The callers of scsi_send_eh_cmnd are setting the cmnd buffer, and then scsi_send_eh_cmnd is copying that updated buffer to the old_cmnd variable. Then after the command runs, we end up copying that old_cmnd var which has the new cmnd to the scsi command buffer. When this command gets recent, all types of fun things happen like getting TUR or START_STOP commands with data and scatterlists. This patch made against scsi-rc-fixes, has the callers of scsi_send_eh_cmnd pass in the command so scsi_send_eh_cmnd can do the right thing. This should go into 2.6.18 since this fixes a regression added when we removed some of the scsi_cmnd fields and replaced them with local variables. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-08-26[SCSI] qla2xxx: Update version number to 8.01.07-k1.Andrew Vasquez
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-08-26[SCSI] qla2xxx: Properly re-enable EFT support after an ISP abort.Andrew Vasquez
Software must explicitely re-enable extended firmware tracing after any ISP abort condition. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-08-26[SCSI] qla2xxx: Correct PLOGI retry logic.Andrew Vasquez
Original code attempts to retry PLOGIs to fcports that are FCP_TARGETs only. If the driver never performed a successful PLOGI/PRLI, the port-type would never be assigned, and the relogin logic would silently drop the request (and thus the port would not be recognized and registered). The fix is relatively straightforward, drop the FCP_TARGET-only check. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-08-26[SCSI] sg: fix incorrect page problemDouglas Gilbert
There's a problem where sg is executing a ->nopage operation on a compound page, it actually calls get_page() on the first page in the compound rather than the page which is being mapped. The fix is to select the correct page by indexing into the compound. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2006-08-24Merge branch 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6Greg Kroah-Hartman
2006-08-24[S390] dasd PAV enabling.Horst Hummel
The subsystem check in the PAV code is incorrect, it enables PAV per device instead of per subsystem. Signed-off-by: Horst Hummel <horst.hummel@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2006-08-24Merge branch 'upstream-greg' of ↵Greg Kroah-Hartman
gregkh@master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
2006-08-24[PATCH] sata_via: use old SCR access pattern on vt6420Tejun Heo
vt6420 has super-fragile SCR registers which can hang the whole machine if accessed with the wrong timings. This patch makes sata_via use SCR registers only during probing and with the same timings as before (pre new EH), which is proven to work. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-24[PATCH] ata_piix: implement force_pcs module parameterTejun Heo
This patch implements force_pcs module parameter for ata_piix. If 1, PCS is ignored, 2 honored. As there seem to be quite a few ICHs w/ impaired PCS, this option will be useful for cases where the default setting doesn't work. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-24[PATCH] ata_piix: ignore PCS on ICH5Tejun Heo
There have been a number of reports regarding some ICH5s failing to detect devices since the PCS handling update. Analysis shows that these problems are caused by bogus PCS values from those controllers. Before the PCS update, the driver didn't honor PCS regs exactly and probed them in many cases PCS reports no device. Now that PCS is honored exactly, these hardware problems are visible. This patch makes ICH5 ignore PCS. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-23Merge branch 'upstream-greg' of ↵Greg Kroah-Hartman
gregkh@master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
2006-08-24Merge branch 'upstream-fixes' of ↵Jeff Garzik
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes
2006-08-24[PATCH] spectrum_cs: Fix firmware uploading errorsRichard Purdie
spectrum_cs: Fix the logic so we error when the device is *not* present! This fixes firmware upload failures which prevent the driver from working (the bug is also present in 2.6.17). Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-24[PATCH] pcnet32: break in 2.6.18-rc1 identifiedDon Fry
A change I made for 2.6.17 and another for 2.6.18 do not work on older pcnet32 chips which I do not have access to. If the chip is a 79C970 or 79C965, do not try and suspend or check the link status. I have tested with a 79C970A, 79C971, 79C972, 79C973, 79C975, 79C976, and 79C978. Signed-off-by: Don Fry <brazilnut@us.ibm.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-24[PATCH] xirc2ps_cs: Cannot reset card in atomic contextJoerg Ahrens
I am using a Xircom CEM33 pcmcia NIC which has occasional hardware problems. If the netdev watchdog detects a transmit timeout, do_reset is called which msleeps - this is illegal in atomic context. This patch schedules the timeout handling as a workqueue item. Signed-off-by: Daniel Drake <dsd@gentoo.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-24[PATCH] Signedness issue in drivers/net/3c515.cEric Sesterhenn
while playing with gcc 4.1 -Wextra warnings, I came across this one: drivers/net/3c515.c:1027: warning: comparison of unsigned expression >= 0 is always true Since i is unsigned the >= 0 check in the for loop is always true, so we might spin there forever unless the if condition triggers. Since i is only used in this loop, this patch changes it to an integer. Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-23Merge branch 'for-linus' of ↵Greg Kroah-Hartman
gregkh@master.kernel.org:/pub/scm/linux/kernel/git/dtor/input
2006-08-23Merge branch 'for-linus' of ↵Greg Kroah-Hartman
git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
2006-08-23[SERIAL] sunzilog: Mirror the sunsab serial setup bug fix.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-23[SERIAL] sunsab: Fix E250 console with RSC.Marc Zyngier
This fixes yet another sunsab problem, when console is set to anything but the first port. The console framework calls sunsab_console_setup for each port, and we end up setting up a console on a not yet discovered port, which leads to an Oops. Instead, defer console setup until the requested port is properly initialized. Tested on an E250 through an RSC console. Reported by Daniel Smolik <marvin@mydatex.cz> Signed-off-by: Marc Zyngier <maz@misterjones.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-23[SCSI] esp: Fix build on SUN4.David S. Miller
Noted by Alexey Dobriyan. Signed-off-by: David S. Miller <davem@davemloft.net>
2006-08-23IB/mthca: Update HCA firmware revisionsMichael S. Tsirkin
Update the driver's list of HCA firmware revisions to make sure people running Sinai firmware older than 1.1.0 get a message suggesting a firmware upgrade. Update the Arbel versions as well while we are at it. Signed-off-by: Michael S. Tsirkin <mst@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
2006-08-23[PATCH] hostap: Restore antenna selection settings after port resetPavel Roskin
Intersil firmware 1.7.4 (and possibly others) loses the antenna selection settings when the port is reset. Signed-off-by: David Acker <dacker@roinet.com> Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-23[PATCH] spectrum_cs: Fix incorrect use of pcmcia_dev_present()Pavel Roskin
This bug was introduced during the PCMCIA API conversion and broke spectrum_cs completely. Tracked down by Fredrik Tolf <fredrik@dolda2000.com> Signed-off-by: Pavel Roskin <proski@gnu.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2006-08-23Input: psmouse - fix Intellimouse 4.0 initializationPozsar Balazs
Revert the superfluous initilization causing some mice become jumpy. Signed-off-by: Pozsar Balazs <pozsy@uhulinux.hu> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-23Input: wistron - fix crash due to referencing __initdataDmitry Torokhov
Remove __initdata markings from keymaps as they are used during normal driver operations. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-23Input: atkbd - fix overrun in atkbd_set_repeat_rate()Florin Malita
This was introduced in commit 3d0f0fa0cb554541e10cb8cb84104e4b10828468: bounds checking is performed against period[32] while indexing delay[4]. Spotted by Coverity, CID 1376. Signed-off-by: Florin Malita <fmalita@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-08-22[PATCH] ata_piix: fix ghost device probing by honoring PCS present bitsTejun Heo
Move out PCS handling from piix_sata_prereset() into piix_sata_present_mask() and use it from newly implemented piix_sata_softreset(). Class codes for devices which are indicated to be absent by PCS are cleared to ATA_DEV_NONE. This fixes ghost device problem reported on ICH6 and 7. This patch moves PCS handling from prereset to softreset, which makes two behavior changes. * perform softreset even when PCS indicates no device * PCS handling is repeated before retrying softresets due to reset failures. Both behavior changes are intended and more consistent with how other drivers behave. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-20Merge trivial low-risk suspend hotkey bugzilla-5918 into releaseLen Brown
2006-08-19[PATCH] WAN: fix C101 card carrier handlingKrzysztof Halasa
Hi, One of my recent changes broke C101 carrier handling, this patch fixes it. Also fixes an old TX underrun checking bug. 2.6.18 material. Please apply. Thanks. Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] FS_ENET: use PAL for mii managementVitaly Bordug
This patch should update the fs_enet infrastructure to utilize Phy Abstraction Layer subsystem. Along with the above, there are apparent bugfixes, overhaul and improvements. Signed-off-by: Vitaly Bordug <vbordug@ru.mvista.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] PAL: Support of the fixed PHYVitaly Bordug
This makes it possible for HW PHY-less boards to utilize PAL goodies. Generic routines to connect to fixed PHY are provided, as well as ability to specify software callback that fills up link, speed, etc. information into PHY descriptor (the latter feature not tested so far). Signed-off-by: Vitaly Bordug <vbordug@ru.mvista.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] xircom_cb: wire up errors from pci_register_driver()Alexey Dobriyan
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Cc: Jeff Garzik <jeff@garzik.org> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Cc: Valerie Henson <val_henson@linux.intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] s390: fix arp_tbl lock usage in qethHeiko Carstens
qeth: bhs must be disabled when accessing neighbour tables. ================================= [ INFO: inconsistent lock state ] Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] skge: remember to run netif_poll_disable()Edgar E. Iglesias
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@axis.com> Cc: Stephen Hemminger <shemminger@osdl.org> Cc: Jeff Garzik <jeff@garzik.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] Add ethtool -g support to Spidernet network driverJim Lewis
Add ethtool -g (show ring sizes) support to the Spidernet network driver. Signed-off-by: James K Lewis <jklewis@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] build fixes: smc91xDavid Brownell
Unclear how these bugs arrived, presumably from incorrect cleanup of the 16-bit-only paths, but smc91x wouldn't build for OMAP. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Nicolas Pitre <nico@cam.org> Cc: Jeff Garzik <jeff@garzik.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2006-08-19[PATCH] via-rhine: add option avoid_D3 (work around broken BIOSes)Roger Luethi
It looks like broken BIOSes controlling Rhine chips will remain in use in significant numbers; such systems fail to come up via PXE after they have been put into D3 (power-saving) mode. This patch adds a module option for disabling the call that puts the chip to sleep. Signed-off-by: Roger Luethi <rl@hellgate.ch> Cc: Jeff Garzik <jgarzik@pobox.com> Cc: Joerg Bashir <brak@archive.org> Cc: Tim Phipps <tim@phipps-hutton.freeserve.co.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>