aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2006-10-18aoe: eliminate isbusy messageEd L. Cashin1-4/+1
This message doesn't help users because the circumstance isn't problematic. Signed-off-by: "Ed L. Cashin" <[email protected]> Acked-by: Alan Cox <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core: kmalloc() failure check in driver_probe_deviceAkinobu Mita1-0/+2
driver_probe_device() is missing kmalloc() failure check. Signed-off-by: Akinobu Mita <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18Driver core: bus: remove indentation levelJeff Garzik1-37/+40
Before potentially fixing up these functions, this cosmetic change reduces the indentation level to make the code easier to read and maintain. No functional changes at all. Signed-off-by: Jeff Garzik <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18Driver core: Don't ignore error returns from probingAlan Stern2-3/+8
This patch (as797) fixes device_add() in the driver core. It needs to pay attention when the driver for a new device reports an error. At the same time, since bus_remove_device() undoes the effects of both bus_add_device() and bus_attach_device(), it needs to check whether the bus_attach_device step failed. Signed-off-by: Alan Stern <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18Driver core: Don't leak 'old_class_name' in drivers/base/core.c::device_rename()Jesper Juhl1-3/+6
If kmalloc() fails to allocate space for 'old_symlink_name' in drivers/base/core.c::device_rename(), then we'll leak 'old_class_name'. Spotted by the Coverity checker. Signed-off-by: Jesper Juhl <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core fixes: sysfs_create_group() retval in topology.cCornelia Huck1-2/+1
Return the return value of sysfs_create_group() in topology_add_dev(). Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core fixes: device_create_file() retval check in dmapool.cCornelia Huck1-2/+11
Check for device_create_file() return value in dma_pool_create(). Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core fixes: device_add() cleanup on errorCornelia Huck1-3/+7
Check for return code of device_create_file() and correct cleanup in the error case in device_add(). Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core fixes: bus_add_device() cleanup on errorCornelia Huck1-4/+15
Correct cleanup in the error path of bus_add_device(). Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core fixes: bus_add_attrs() retval checkCornelia Huck1-1/+5
Check return value of bus_add_attrs() in bus_register(). Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18driver core fixes: sysfs_create_link() retval check in class.cCornelia Huck1-1/+4
Check for return value of sysfs_create_link() in class_device_add(). Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18Fix dev_printk() is now GPL-onlyMatthew Wilcox1-1/+1
Make dev_printk usable from non-GPL modules again dev_printk now calls dev_driver_string. We want even proprietary modules to be calling dev_printk, so the export of dev_driver_string needs to be non-GPL-only. Signed-off-by: Matthew Wilcox <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18Driver core: plug device probe memory leakDuncan Sands1-1/+1
Make sure data is freed if the kthread fails to start. Signed-off-by: Duncan Sands <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI Hotplug: move pci_hotplug.h to include/linux/Greg Kroah-Hartman23-257/+22
This makes it possible to build pci hotplug drivers outside of the main kernel tree, and Sam keeps telling me to move local header files to their proper places... Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18change pci hotplug subsystem maintainer to KristenKristen Carlson Accardi2-4/+2
Here's a patch adding me to the maintainers file for the pci hotplug subsystem, as we discussed. Signed-off-by: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: optionally sort device lists breadth-firstMatt Domsch1-0/+92
Problem: New Dell PowerEdge servers have 2 embedded ethernet ports, which are labeled NIC1 and NIC2 on the chassis, in the BIOS setup screens, and in the printed documentation. Assuming no other add-in ethernet ports in the system, Linux 2.4 kernels name these eth0 and eth1 respectively. Many people have come to expect this naming. Linux 2.6 kernels name these eth1 and eth0 respectively (backwards from expectations). I also have reports that various Sun and HP servers have similar behavior. Root cause: Linux 2.4 kernels walk the pci_devices list, which happens to be sorted in breadth-first order (or pcbios_find_device order on i386, which most often is breadth-first also). 2.6 kernels have both the pci_devices list and the pci_bus_type.klist_devices list, the latter is what is walked at driver load time to match the pci_id tables; this klist happens to be in depth-first order. On systems where, for physical routing reasons, NIC1 appears on a lower bus number than NIC2, but NIC2's bridge is discovered first in the depth-first ordering, NIC2 will be discovered before NIC1. If the list were sorted breadth-first, NIC1 would be discovered before NIC2. A PowerEdge 1955 system has the following topology which easily exhibits the difference between depth-first and breadth-first device lists. -[0000:00]-+-00.0 Intel Corporation 5000P Chipset Memory Controller Hub +-02.0-[0000:03-08]--+-00.0-[0000:04-07]--+-00.0-[0000:05-06]----00.0-[0000:06]----00.0 Broadcom Corporation NetXtreme II BCM5708S Gigabit Ethernet (labeled NIC2, 2.4 kernel name eth1, 2.6 kernel name eth0) +-1c.0-[0000:01-02]----00.0-[0000:02]----00.0 Broadcom Corporation NetXtreme II BCM5708S Gigabit Ethernet (labeled NIC1, 2.4 kernel name eth0, 2.6 kernel name eth1) Other factors, such as device driver load order and the presence of PCI slots at various points in the bus hierarchy further complicate this problem; I'm not trying to solve those here, just restore the device order, and thus basic behavior, that 2.4 kernels had. Solution: The solution can come in multiple steps. Suggested fix #1: kernel Patch below optionally sorts the two device lists into breadth-first ordering to maintain compatibility with 2.4 kernels. It adds two new command line options: pci=bfsort pci=nobfsort to force the sort order, or not, as you wish. It also adds DMI checks for the specific Dell systems which exhibit "backwards" ordering, to make them "right". Suggested fix #2: udev rules from userland Many people also have the expectation that embedded NICs are always discovered before add-in NICs (which this patch does not try to do). Using the PCI IRQ Routing Table provided by system BIOS, it's easy to determine which PCI devices are embedded, or if add-in, which PCI slot they're in. I'm working on a tool that would allow udev to name ethernet devices in ascending embedded, slot 1 .. slot N order, subsort by PCI bus/dev/fn breadth-first. It'll be possible to use it independent of udev as well for those distributions that don't use udev in their installers. Suggested fix #3: system board routing rules One can constrain the system board layout to put NIC1 ahead of NIC2 regardless of breadth-first or depth-first discovery order. This adds a significant level of complexity to board routing, and may not be possible in all instances (witness the above systems from several major manufacturers). I don't want to encourage this particular train of thought too far, at the expense of not doing #1 or #2 above. Feedback appreciated. Patch tested on a Dell PowerEdge 1955 blade with 2.6.18. You'll also note I took some liberty and temporarily break the klist abstraction to simplify and speed up the sort algorithm. I think that's both safe and appropriate in this instance. Signed-off-by: Matt Domsch <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18cpcihp_generic: prevent loading without "bridge" parameterAkinobu Mita1-2/+2
cpcihp_generic module requires configured "bridge" module parameter. But it can be loaded successfully without that parameter. Because module init call ends up returning positive value. This patch prevents from loading without setting "bridge" module parameter. Signed-off-by: Akinbou Mita <[email protected]> Signed-off-by: Scott Murray <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18pci: Additional search functionsAlan Cox1-2/+70
In order to finish converting to pci_get_* interfaces we need to add a couple of bits of missing functionaility pci_get_bus_and_slot() provides the equivalent to pci_find_slot() (pci_get_slot is already taken as a name for something similar but not the same) pci_get_device_reverse() is the equivalent of pci_find_device_reverse but refcounting Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: quirks: switch quirks code offender to use pci_get APIAlan Cox1-1/+2
Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: Improve pci_msi_supported() commentsBrice Goglin1-7/+9
Improve pci_msi_supported() comments. Signed-off-by: Brice Goglin <[email protected]> Signed-off-by: Grant Grundler <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI hotplug: ioremap balanced with iounmapAmol Lad1-5/+14
1. ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. 2. Handle return value correctly Tested (compilation only) with: - allmodconfig Signed-off-by: Amol Lad <[email protected]> Cc: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18shpchp: remove unnecessary cmd_busy member from struct controllerKenji Kaneshige2-5/+1
This patch removes unnecessary cmd_busy member from struct controller. Read command status register instead of using cmd_busy. Signed-off-by: Kenji Kaneshige <[email protected]> Signed-off-by: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18shpchp: fix command completion checkKenji Kaneshige1-5/+9
This patch fixes the problem that shpchp driver could mis-detect command failures if the system was under heavy load. Signed-off-by: Kenji Kaneshige <[email protected]> Signed-off-by: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18pci: Stamp out pci_find_* usage in fakephpAlan Cox1-3/+8
pci_find is not hotplug safe, so it really doesn't want to be in an actual hotplug driver either. Signed-off-by: Alan Cox <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: fix pcie_portdrv_restore_config undefined without CONFIG_PM errorZhang, Yanmin1-1/+1
On Thu, 2006-09-28 at 03:42, Olaf Hering wrote: > PCI-Express AER implemetation: pcie_portdrv error handler > > This patch breaks if CONFIG_PM is not enabled, > pcie_portdrv_restore_config() will be undefined. I move the definition of pcie_portdrv_restore_config out of CONFIG_PM. Below patch is against 2.6.18-mm1. Could you try it? Signed-off-by: Zhang Yanmin <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18Fix DMA resource allocation in ACPIPnPVojtech Pavlik1-15/+26
The ACPIPnP implementation had the understanding of Linux resource flags very wrong, resulting in a nonfunctional implementation of DMA resource allocation. This was usually not a problem, since almost no on-board PnP devices use ISA DMA, with the exception of ECP parallel ports. Even with that, parallel port DMA is preconfigured by the BIOS, so this routine isn't normally called. Except in the case where somebody does 'rmmod parport_pc; modprobe parport_pc', where the rmmod case disables the ECP parallel port resources, and they need to be enabled again to initialize the module. This didn't work, resulting in a non-printing printer. The application doing exactly the above to force reprobing of printers is the YaST printer module. Thus without this fix YaST wedged the printer when configuring it, and was not able to print a test page. Reported-by: Ralf Flaxa <[email protected]> Reproduced-by: Jiri Dluhos <[email protected]> Signed-off-by: Vojtech Pavlik <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: Turn pci_fixup_video into generic for embedded VGA[email protected]2-1/+49
pci_fixup_video turns into generic code because there are many platforms need this fixup for embedded VGA as well as x86. The Video BIOS integrates into System BIOS on a machine has embedded VGA although embedded VGA generally don't have PCI ROM. As a result, embedded VGA need the way that the sysfs rom points to the Video BIOS of System RAM (0xC0000). PCI-to-PCI Bridge Architecture specification describes the condition whether or not PCI ROM forwards VGA compatible memory address. fixup_video suits this specification. Although the Video ROM generally implements in x86 code regardless of platform, some application such as X Window System can run this code by dosemu86. Therefore, pci_fixup_video should turn into generic code. Signed-off-by: Eiichiro Oiwa <[email protected]> Acked-by: Alan Cox <[email protected]> Acked-by: Jesse Barnes <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: add ICH7/8 ACPI/GPIO io resource quirksDaniel Ritz1-0/+6
Signed-off-by: Daniel Ritz <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: pcie-check-and-return-bus_register-errors fixAndrew Morton2-3/+4
__must_check goes on the declaration, not the definition. Cc: "Randy.Dunlap" <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18PCI: VIA IRQ quirk behaviour changeDaniel Drake1-9/+34
The most recent VIA IRQ quirk changes have broken various VIA devices for some users. We are not able to add these devices to the blacklist as they are also available in PCI-card form, and running the quirk on these devices brings us back to square one (running the VIA quirk on non-VIA boards where the quirk is not needed). This patch, based on suggestions from Sergey Vlasov, implements a scheme similar to but more restrictive than the scheme we had in 2.6.16 and earlier. It runs the quirk on all VIA hardware, but *only* if a VIA southbridge was detected on the system. To further reduce the amount of quirked devices, this patch includes a change suggested by Linus at http://lkml.org/lkml/2005/9/27/113 This ensures that devices bound to non-legacy IO-APIC interrupt lines are not quirked. We have made one change to Linus' suggestion: we do a comparison of ">15" rather than ">=15", as 15 is still in the legacy interrupt range. There is still a downside to this patch: if the user inserts a VIA PCI card into a VIA-based motherboard, in some circumstances the quirk will also run on the VIA PCI card. This corner case is hard to avoid. Signed-off-by: Daniel Drake <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18pciehp: Remove unnecessary check in pciehp_ctrl.cEric Sesterhenn1-2/+1
this was spotted by coverity (cid #819). We dereference p_slot earlier in the function, and i found no way it could become NULL anywhere. Signed-off-by: Eric Sesterhenn <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18pciehp - add missing lockingKenji Kaneshige4-30/+33
This patch fixes the problem that system will panic if multiple power on/off operations are issued to the same slot in parallel. This problem can be easily reproduced by commands below. # while true; do echo 1 > power; echo 0 > power; done & # while true; do echo 1 > power; echo 0 > power; done & The cause is lack of locking for enable/disable operations. This patch fixes this problem. Signed-off-by: Kenji Kaneshige <[email protected]> Signed-off-by: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18pciehp: fix improper info messagesKenji Kaneshige2-22/+33
The slot number displayed in info messages would cause a confusion because those are displayed in several ways (decimal and hex). Furthermore, those slot number is not same as slot name (directory name). This patch fixes those improper info messages. Signed-off-by: Kenji Kaneshige <[email protected]> Signed-off-by: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18shpchp: fix shpchp_wait_cmd in pollKenji Kaneshige1-19/+35
This patch fixes the problem that issuing SHPC command in poll mode always fails with the following message. shpchp: Command not completed in 2000 msec Signed-off-by: Kenji Kaneshige <[email protected]> Signed-off-by: Kristen Carlson Accardi <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2006-10-18[S390] dasd: clean up timer.Stefan Weinhuber1-0/+1
Clean up dasd timer when when a dasd device is set offline. Signed-off-by: Stefan Weinhuber <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]>
2006-10-18[S390] monwriter find header logic.Melissa Howland1-4/+10
Fix logic for finding matching buffers. Signed-off-by: Melissa Howland <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]>
2006-10-18[S390] cio: sch_no -> schid.sch_no conversion.Cornelia Huck1-1/+1
Overlooked one sch_no -> schid.sch_no conversion. Signed-off-by: Cornelia Huck <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]>
2006-10-18[S390] cio: invalid device operational notificationPeter Oberparleiter1-0/+4
Reset device operational notification flag when channel paths become unavailable during path verification. Signed-off-by: Peter Oberparleiter <[email protected]> Signed-off-by: Martin Schwidefsky <[email protected]>
2006-10-18[valkyriefb] Ifdef for when CONFIG_NVRAM isn't enabled.Ben Collins1-2/+2
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[platinumfb] Ifdef for when CONFIG_NVRAM isn't enabled.Ben Collins1-1/+4
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[igafb] Add pci dev table for module auto loading.Ben Collins1-0/+7
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[controlfb] Ifdef for when CONFIG_NVRAM isn't enabled.Ben Collins1-2/+6
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[hid-core] TurboX Keyboard needs NOGET quirk.Ben Collins1-0/+5
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[ixj] Add pci dev table for module auto loading.Ben Collins1-1/+10
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[initio] Add pci dev table for module auto loading.Ben Collins1-9/+10
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[fdomain] Add pci dev table for module auto loading.Ben Collins1-0/+9
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[BusLogic] Add pci dev table for auto module loading.Ben Collins1-0/+11
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[mv643xx] Add pci device table for auto module loading.Ben Collins1-0/+6
Signed-off-by: Ben Collins <[email protected]>
2006-10-18[alim7101] Add pci dev table for auto module loading.Ben Collins1-1/+12
Also fixes comment for nowayout module param. Signed-off-by: Ben Collins <[email protected]>
2006-10-17[SPARC] {bbc_,}envctrl: Use call_usermodehelper().David S. Miller2-4/+4
We should not be calling kernel_execve() directly and this causes module build failures because kernel_execve() is not exported to modules. Signed-off-by: David S. Miller <[email protected]>