linux/drivers/ide
Jens Axboe e8e7b9eb11 ide-cd: fix oops when using growisofs
cdrom_read_capacity() will blindly return the capacity from the device
without sanity-checking it.  This later causes code in fs/buffer.c to
oops.

Fix this by checking that the device is telling us sensible things.

From: Jens Axboe <jens.axboe@oracle.com>
Cc: Michael Buesch <mb@bu3sch.de>
Cc: Jan Kara <jack@suse.cz>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: <stable@kernel.org>
Cc: Borislav Petkov <petkovbb@googlemail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
[bart: print device name instead of driver name]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
[harvey: blocklen is a big-endian value]
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2008-07-24 22:53:35 +02:00
..
arm palm_bk3710: add UltraDMA/100 support 2008-07-24 22:53:34 +02:00
h8300 ide: add ide_host_add() helper 2008-07-23 19:55:57 +02:00
legacy gayle: release resources on ide_host_add() failure 2008-07-24 22:53:34 +02:00
mips ide: add ide_host_add() helper 2008-07-23 19:55:57 +02:00
pci ide: drop 'name' parameter from ->init_chipset method 2008-07-24 22:53:33 +02:00
ppc ide: add ide_host_add() helper 2008-07-23 19:55:57 +02:00
Kconfig ide-generic: is no longer needed on ppc32 2008-07-24 22:53:30 +02:00
Makefile move ide/legacy/hd.c to drivers/block/ 2008-07-16 20:33:47 +02:00
ide-acpi.c ide: remove obsoleted "ide=" kernel parameters 2008-07-15 21:21:47 +02:00
ide-atapi.c ide: remove unused PC_FLAG_DRQ_INTERRUPT 2008-07-23 19:56:01 +02:00
ide-cd.c ide-cd: fix oops when using growisofs 2008-07-24 22:53:35 +02:00
ide-cd.h ide-cd: convert to using the new atapi_flags 2008-07-23 19:56:02 +02:00
ide-cd_ioctl.c ide: ide-cd_ioctl.c fix sparse integer as NULL pointer warnings 2008-07-23 19:56:02 +02:00
ide-cd_verbose.c block: replace sizeof(rq->cmd) with BLK_MAX_CDB 2008-04-29 14:48:55 +02:00
ide-disk.c ide: add ide_device_{get,put}() helpers 2008-07-24 22:53:15 +02:00
ide-dma.c ide: trivial sparse annotations 2008-07-24 22:53:34 +02:00
ide-floppy.c ide: add ide_device_{get,put}() helpers 2008-07-24 22:53:15 +02:00
ide-generic.c ide-generic: remove ide_default_{io_base,irq}() inlines (take 3) 2008-07-24 22:53:31 +02:00
ide-io.c ide: add struct ide_tp_ops (take 2) 2008-07-23 19:55:56 +02:00
ide-iops.c ide: trivial sparse annotations 2008-07-24 22:53:34 +02:00
ide-lib.c ide: add struct ide_tp_ops (take 2) 2008-07-23 19:55:56 +02:00
ide-pio-blacklist.c ide: move PIO blacklist to ide-pio-blacklist.c 2008-07-16 20:33:39 +02:00
ide-pnp.c ide: add ide_host_add() helper 2008-07-23 19:55:57 +02:00
ide-probe.c ide: add ide_pci_remove() helper 2008-07-24 22:53:19 +02:00
ide-proc.c ide: trivial sparse annotations 2008-07-24 22:53:34 +02:00
ide-scan-pci.c ide: replace remaining __FUNCTION__ occurrences 2008-04-26 22:25:20 +02:00
ide-tape.c ide: ide-tape.c sparse annotations and unaligned access removal 2008-07-24 22:53:33 +02:00
ide-taskfile.c ide: add struct ide_tp_ops (take 2) 2008-07-23 19:55:56 +02:00
ide-timings.c ide: move ide_pio_cycle_time() to ide-timings.c 2008-07-16 20:33:39 +02:00
ide.c ide: add ide_device_{get,put}() helpers 2008-07-24 22:53:15 +02:00
setup-pci.c ide: drop 'name' parameter from ->init_chipset method 2008-07-24 22:53:33 +02:00