linux-IllusionX/drivers
Roman Kagan b2d84f078a [PATCH] drivers/base/bus.c: fix iteration in driver_detach()
With 2.6.11 and 2.6.12-rc2 (and perhaps a few versions before) usb
drivers for multi-interface devices, which do
usb_driver_release_interface() in their disconnect(), make rmmod hang.

It turns out to be due to a bug in drivers/base/bus.c:driver_detach(),
that iterates over the list of attached devices with
list_for_each_safe() under an assumption that device_release_driver()
only releases the current device, while it may also call
device_release_driver() for other devices on the same list.

The following patch fixes it.  Please consider applying.

Signed-off-by: Roman Kagan <rkagan@mail.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-05-04 23:44:38 -07:00
..
acorn
acpi
atm
base [PATCH] drivers/base/bus.c: fix iteration in driver_detach() 2005-05-04 23:44:38 -07:00
block
bluetooth
cdrom
char Automatic merge of rsync://rsync.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6.git 2005-05-04 19:52:45 -07:00
cpufreq
crypto
dio
eisa
fc4
firmware
i2c
ide
ieee1394
infiniband
input
isdn
macintosh
mca
md
media
message
misc
mmc
mtd
net
nubus
oprofile
parisc
parport
pci
pcmcia
pnp
s390
sbus
scsi
serial
sh
sn
tc
telephony
usb
video [PATCH] i810fb: fix __initdata access 2005-05-04 07:50:15 -07:00
w1
zorro
Kconfig
Makefile