77ef6c4d6e
In kernel 2.6.16, if a mounted storage device is removed, an oops happens because ub supplies an interface device (and kobject) to the block layer, but neglects to pin it. And apparently, the block layer expects its users to pin device structures. The code in ub was broken this way for years. But the bug was exposed only by 2.6.16 when it started to call block_uevent on close, which traverses device structures (kobjects actually). Signed-off-by: Pete Zaitcev <zaitcev@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
||
---|---|---|
.. | ||
aoe | ||
paride | ||
acsi_slm.c | ||
acsi.c | ||
amiflop.c | ||
ataflop.c | ||
cciss_cmd.h | ||
cciss_scsi.c | ||
cciss_scsi.h | ||
cciss.c | ||
cciss.h | ||
cpqarray.c | ||
cpqarray.h | ||
cryptoloop.c | ||
DAC960.c | ||
DAC960.h | ||
floppy.c | ||
ida_cmd.h | ||
ida_ioctl.h | ||
Kconfig | ||
loop.c | ||
Makefile | ||
nbd.c | ||
pktcdvd.c | ||
ps2esdi.c | ||
rd.c | ||
smart1,2.h | ||
swim3.c | ||
swim_iop.c | ||
sx8.c | ||
ub.c | ||
umem.c | ||
viodasd.c | ||
xd.c | ||
xd.h | ||
z2ram.c |