alistair23-linux/drivers
Patrick Mochel 273971bade [PATCH] usb: klist_node_attached() fix
The original code looks like this:

        /* if interface was already added, bind now; else let
         * the future device_add() bind it, bypassing probe()
         */
        if (!list_empty (&dev->bus_list))
                device_bind_driver(dev);

IOW, it's checking to see if the device is attached to the bus or not
and binding the driver if it is. It's checking the device's bus list,
which will only appear empty when the device has been initialized, but
not added. It depends way too much on the driver model internals, but it
seems to be the only way to do the weird crap they want to do with
interfaces.

When I converted it to use klists, I accidentally inverted the logic,
which led to bad things happening. This patch returns the check to its
orginal value.

From: Patrick Mochel <mochel@digitalimplant.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

Index: gregkh-2.6/drivers/usb/core/usb.c
===================================================================
2005-06-20 15:15:28 -07:00
..
acorn
acpi [PATCH] sysfs: (rest) if show/store is missing return -EIO 2005-06-20 15:15:03 -07:00
atm [ATM]: [drivers] kill pointless NULL checks and casts before kfree() 2005-06-02 13:04:07 -07:00
base [PATCH] Driver Core: fix bk-driver-core kills ppc64 2005-06-20 15:15:27 -07:00
block [PATCH] class: convert drivers/block/* to use the new class api instead of class_simple 2005-06-20 15:15:07 -07:00
bluetooth
cdrom [PATCH] ppc64 iSeries: make virtual DVD-RAMs writable again 2005-05-28 11:14:00 -07:00
char [PATCH] Fix typo in scdrv_init() 2005-06-20 15:15:27 -07:00
cpufreq [PATCH] sysfs: (rest) if show/store is missing return -EIO 2005-06-20 15:15:03 -07:00
crypto
dio
eisa
fc4 [SCSI] allow sleeping in ->eh_host_reset_handler() 2005-06-17 12:05:18 -05:00
firmware [PATCH] sysfs: (rest) if show/store is missing return -EIO 2005-06-20 15:15:03 -07:00
i2c [PATCH] I2C: ALI1563 SMBus driver fix 2005-05-31 14:03:05 -07:00
ide [PATCH] PCI: amd74xx patch for new NVIDIA device IDs 2005-05-31 14:26:38 -07:00
ieee1394 [PATCH] Use device_for_each_child() to unregister devices in nodemgr_remove_host_dev() 2005-06-20 15:15:26 -07:00
infiniband [PATCH] sysfs: (rest) if show/store is missing return -EIO 2005-06-20 15:15:03 -07:00
input [PATCH] INPUT: move to use the new class code, instead of class_simple 2005-06-20 15:15:04 -07:00
isdn [PATCH] class: convert drivers/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
macintosh [PATCH] class: convert drivers/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
mca
md [PATCH] dm: Handle READA requests in dm-mpath.c 2005-06-08 16:21:14 -07:00
media [PATCH] class: convert drivers/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
message merge by hand (fix up qla_os.c merge error) 2005-06-17 18:42:23 -05:00
misc
mmc
mtd
net [PATCH] class: convert drivers/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
nubus
oprofile
parisc
parport
pci [PATCH] use device_for_each_child() to properly access child devices. 2005-06-20 15:15:26 -07:00
pcmcia
pnp [PATCH] Use driver_for_each_device() in drivers/pnp/driver.c instead of manually walking list. 2005-06-20 15:15:13 -07:00
s390 [PATCH] class: convert drivers/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
sbus
scsi [PATCH] use device_for_each_child() to properly access child devices. 2005-06-20 15:15:22 -07:00
serial [PATCH] Serial: remove unused variable in sa1100 driver 2005-06-08 19:26:47 +01:00
sh
sn
tc
telephony
usb [PATCH] usb: klist_node_attached() fix 2005-06-20 15:15:28 -07:00
video [PATCH] class: convert drivers/* to use the new class api instead of class_simple 2005-06-20 15:15:09 -07:00
w1
zorro
Kconfig
Makefile