linux/drivers/block
Linus Torvalds c093ee4f07 floppy: fix use-after-free in module load failure path
Commit 488211844e ("floppy: switch to one queue per drive instead of
sharing a queue") introduced a use-after-free.  We do "put_disk()" on
the disk device _before_ we then clean up the queue associated with that
disk.

Move the put_disk() down to avoid dereferencing a free'd data structure.

Cc: Jens Axboe <jaxboe@fusionio.com>
Cc: Vivek Goyal <vgoyal@redhat.com>
Reported-and-tested-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-11-05 17:45:59 -07:00
..
aoe drivers/block/aoe/aoeblk.c: ratelimit a warning printk 2010-10-28 06:15:26 -06:00
drbd drivers/block/drbd/drbd_main.c: fix error path 2010-10-28 06:15:26 -06:00
paride Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
amiflop.c Merge branch 'for-2.6.37/drivers' of git://git.kernel.dk/linux-2.6-block 2010-10-22 17:03:12 -07:00
ataflop.c Merge branch 'for-2.6.37/drivers' of git://git.kernel.dk/linux-2.6-block 2010-10-22 17:03:12 -07:00
brd.c Merge branch 'for-2.6.37/barrier' of git://git.kernel.dk/linux-2.6-block 2010-10-22 17:07:18 -07:00
cciss_cmd.h
cciss_scsi.c
cciss_scsi.h
cciss.c cciss: remove overlapping PCI IDs 2010-10-28 06:33:27 -06:00
cciss.h
cpqarray.c
cpqarray.h
cryptoloop.c
DAC960.c Merge branch 'llseek' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl 2010-10-22 10:52:56 -07:00
DAC960.h
floppy.c floppy: fix use-after-free in module load failure path 2010-11-05 17:45:59 -07:00
hd.c
ida_cmd.h
ida_ioctl.h
Kconfig rbd: introduce rados block device (rbd), based on libceph 2010-10-20 15:38:13 -07:00
loop.c loop: Properly clear sysfs in autoclear mode 2010-10-27 19:51:30 -06:00
Makefile rbd: introduce rados block device (rbd), based on libceph 2010-10-20 15:38:13 -07:00
mg_disk.c
nbd.c
osdblk.c
pktcdvd.c Merge branch 'for-2.6.37/barrier' of git://git.kernel.dk/linux-2.6-block 2010-10-22 17:07:18 -07:00
ps3disk.c Merge branch 'for-2.6.37/barrier' of git://git.kernel.dk/linux-2.6-block 2010-10-22 17:07:18 -07:00
ps3vram.c
rbd_types.h rbd: introduce rados block device (rbd), based on libceph 2010-10-20 15:38:13 -07:00
rbd.c rbd: passing wrong variable to bvec_kunmap_irq() 2010-10-20 15:38:25 -07:00
smart1,2.h
sunvdc.c
swim3.c
swim_asm.S
swim.c
sx8.c
ub.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 2010-10-22 20:30:48 -07:00
umem.c
umem.h
viodasd.c
virtio_blk.c Merge branch 'for-2.6.37/barrier' of git://git.kernel.dk/linux-2.6-block 2010-10-22 17:07:18 -07:00
xd.c
xd.h
xen-blkfront.c Merge branch 'stable/xen-pcifront-0.8.2' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen 2010-10-28 17:11:17 -07:00
xsysace.c Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6 2010-10-25 08:19:14 -07:00
z2ram.c drivers/block/z2ram.c: correct printing of sector_t 2010-10-28 06:15:26 -06:00