- 19 10月, 2006 40 次提交
-
-
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6由 Linus Torvalds 提交于
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6: (22 commits) PCI Hotplug: move pci_hotplug.h to include/linux/ change pci hotplug subsystem maintainer to Kristen PCI: optionally sort device lists breadth-first cpcihp_generic: prevent loading without "bridge" parameter pci: Additional search functions PCI: quirks: switch quirks code offender to use pci_get API PCI: Update MSI-HOWTO.txt according to pci_msi_supported() PCI: Improve pci_msi_supported() comments PCI hotplug: ioremap balanced with iounmap shpchp: remove unnecessary cmd_busy member from struct controller shpchp: fix command completion check pci: Stamp out pci_find_* usage in fakephp PCI: fix pcie_portdrv_restore_config undefined without CONFIG_PM error Fix DMA resource allocation in ACPIPnP PCI: Turn pci_fixup_video into generic for embedded VGA PCI: add ICH7/8 ACPI/GPIO io resource quirks PCI: pcie-check-and-return-bus_register-errors fix PCI: VIA IRQ quirk behaviour change pciehp: Remove unnecessary check in pciehp_ctrl.c pciehp - add missing locking ...
-
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6由 Linus Torvalds 提交于
* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6: driver core: kmalloc() failure check in driver_probe_device Driver core: bus: remove indentation level Driver core: Don't ignore error returns from probing Driver core: Don't leak 'old_class_name' in drivers/base/core.c::device_rename() driver core fixes: sysfs_create_group() retval in topology.c driver core fixes: device_create_file() retval check in dmapool.c driver core fixes: device_add() cleanup on error driver core fixes: bus_add_device() cleanup on error driver core fixes: bus_add_attrs() retval check driver core fixes: sysfs_create_link() retval check in class.c sysfs: update obsolete comment in sysfs_update_file sysfs: remove duplicated dput in sysfs_update_file HOWTO: bug report addition Fix dev_printk() is now GPL-only Driver core: plug device probe memory leak Documentation: feature-removal-schedule typo
-
git://git390.osdl.marist.edu/pub/scm/linux-2.6由 Linus Torvalds 提交于
* 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6: [S390] update default configuration [S390] cio: update documentation. [S390] dasd: clean up timer. [S390] Fix pte type checking. [S390] monwriter find header logic. [S390] cio: sch_no -> schid.sch_no conversion. [S390] Wire up epoll_pwait syscall. [S390] cio: invalid device operational notification [S390] fix vmlinux link when CONFIG_SYSIPC=n
-
git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6由 Linus Torvalds 提交于
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Count resched interrupts [IA64] remove unused acpi_kbd_controller_present, acpi_legacy_devices [IA64] update sn2_defconfig [IA64] reformat pal.S to fit in 80 columns, fix typos [IA64] remove unused PAL_CALL_IC_OFF [IA64] - Allow IPIs in timer loop [IA64] move ioremap/ioremap_nocache under __KERNEL__ [IA64] perfmon fix for global IRQ fix
-
由 Akinobu Mita 提交于
driver_probe_device() is missing kmalloc() failure check. Signed-off-by: NAkinobu Mita <akinobu.mita@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jeff Garzik 提交于
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: NJeff Garzik <jeff@garzik.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Alan Stern 提交于
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: NAlan Stern <stern@rowland.harvard.edu> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Jesper Juhl 提交于
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: NJesper Juhl <jesper.juhl@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Cornelia Huck 提交于
Return the return value of sysfs_create_group() in topology_add_dev(). Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Cornelia Huck 提交于
Check for device_create_file() return value in dma_pool_create(). Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Cornelia Huck 提交于
Check for return code of device_create_file() and correct cleanup in the error case in device_add(). Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Cornelia Huck 提交于
Correct cleanup in the error path of bus_add_device(). Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Cornelia Huck 提交于
Check return value of bus_add_attrs() in bus_register(). Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Cornelia Huck 提交于
Check for return value of sysfs_create_link() in class_device_add(). Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Hidetoshi Seto 提交于
And the obsolete comment should be updated (or totally removed). Signed-off-by: NHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Hidetoshi Seto 提交于
Following function can drops d_count twice against one reference by lookup_one_len. <SOURCE> /** * sysfs_update_file - update the modified timestamp on an object attribute. * @kobj: object we're acting for. * @attr: attribute descriptor. */ int sysfs_update_file(struct kobject * kobj, const struct attribute * attr) { struct dentry * dir = kobj->dentry; struct dentry * victim; int res = -ENOENT; mutex_lock(&dir->d_inode->i_mutex); victim = lookup_one_len(attr->name, dir, strlen(attr->name)); if (!IS_ERR(victim)) { /* make sure dentry is really there */ if (victim->d_inode && (victim->d_parent->d_inode == dir->d_inode)) { victim->d_inode->i_mtime = CURRENT_TIME; fsnotify_modify(victim); /** * Drop reference from initial sysfs_get_dentry(). */ dput(victim); res = 0; } else d_drop(victim); /** * Drop the reference acquired from sysfs_get_dentry() above. */ dput(victim); } mutex_unlock(&dir->d_inode->i_mutex); return res; } </SOURCE> PCI-hotplug (drivers/pci/hotplug/pci_hotplug_core.c) is only user of this function. I confirmed that dentry of /sys/bus/pci/slots/XXX/* have negative d_count value. This patch removes unnecessary dput(). Signed-off-by: NHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Acked-by: NManeesh Soni <maneesh@in.ibm.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Diego Calleja 提交于
I suspect that not many people is subscribed to the bugzilla mailing list, not surprising since the URLs doesn't seem to be in the tree :) After fixing my english, I wonder if the following patch could be applied... Signed-off-by: NDiego Calleja <diegocg@gmail.com> Acked-by: NRandy Dunlap <rdunlap@xenotime.net> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Matthew Wilcox 提交于
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: NMatthew Wilcox <matthew@wil.cx> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Duncan Sands 提交于
Make sure data is freed if the kthread fails to start. Signed-off-by: NDuncan Sands <baldrick@free.fr> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Dominik Brodowski 提交于
Fix typo in newly added feature remove schedule item. Signed-off-by: NDominik Brodowski <linux@dominikbrodowski.net> Cc: Kay Sievers <kay.sievers@suse.de> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Greg Kroah-Hartman 提交于
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: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Kristen Carlson Accardi 提交于
Here's a patch adding me to the maintainers file for the pci hotplug subsystem, as we discussed. Signed-off-by: NKristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Matt Domsch 提交于
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: NMatt Domsch <Matt_Domsch@dell.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Akinobu Mita 提交于
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: NAkinbou Mita <akinobu.mita@gmail.com> Signed-off-by: NScott Murray <scottm@somanetworks.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Alan Cox 提交于
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: NAlan Cox <alan@redhat.com> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Alan Cox 提交于
Signed-off-by: NAlan Cox <alan@redhat.com> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Brice Goglin 提交于
Update MSI-HOWTO.txt according to pci_msi_supported(). Signed-off-by: NBrice Goglin <brice@myri.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Brice Goglin 提交于
Improve pci_msi_supported() comments. Signed-off-by: NBrice Goglin <brice@myri.com> Signed-off-by: NGrant Grundler <grundler@parisc-linux.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Amol Lad 提交于
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: NAmol Lad <amol@verismonetworks.com> Cc: Kristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Kenji Kaneshige 提交于
This patch removes unnecessary cmd_busy member from struct controller. Read command status register instead of using cmd_busy. Signed-off-by: NKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: NKristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Kenji Kaneshige 提交于
This patch fixes the problem that shpchp driver could mis-detect command failures if the system was under heavy load. Signed-off-by: NKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: NKristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Alan Cox 提交于
pci_find is not hotplug safe, so it really doesn't want to be in an actual hotplug driver either. Signed-off-by: NAlan Cox <alan@redhat.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Zhang, Yanmin 提交于
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: NZhang Yanmin <yanmin.zhang@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Vojtech Pavlik 提交于
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: NRalf Flaxa <rf@suse.de> Reproduced-by: NJiri Dluhos <jdluhos@suse.cz> Signed-off-by: NVojtech Pavlik <vojtech@suse.cz> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
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: NEiichiro Oiwa <eiichiro.oiwa.nm@hitachi.com> Acked-by: NAlan Cox <alan@redhat.com> Acked-by: NJesse Barnes <jesse.barnes@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Daniel Ritz 提交于
Signed-off-by: NDaniel Ritz <daniel.ritz@gmx.ch> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Andrew Morton 提交于
__must_check goes on the declaration, not the definition. Cc: "Randy.Dunlap" <rdunlap@xenotime.net> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Daniel Drake 提交于
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: NDaniel Drake <dsd@gentoo.org> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Eric Sesterhenn 提交于
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: NEric Sesterhenn <snakebyte@gmx.de> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-
由 Kenji Kaneshige 提交于
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: NKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: NKristen Carlson Accardi <kristen.c.accardi@intel.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
-