linux/drivers/block
Minfei Huang 347a529398 virtio_blk: Fix a slient kernel panic
We do a lot of memory allocation in function init_vq, and don't handle
the allocation failure properly. Then this function will return 0,
although initialization fails due to lacking memory. At that moment,
kernel will panic in guest machine, if virtio is used to drive disk.

To fix this bug, we should take care of allocation failure, and return
correct value to let caller know what happen.

Tested-by: Chao Fan <fanc.fnst@cn.fujitsu.com>
Signed-off-by: Minfei Huang <mnghuan@gmail.com>
Signed-off-by: Minfei Huang <minfei.hmf@alibaba-inc.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2016-08-09 13:42:39 +03:00
..
aoe tree wide: get rid of __GFP_REPEAT for order-0 allocations part I 2016-06-24 17:23:52 -07:00
drbd block: rename bio bi_rw to bi_opf 2016-08-07 14:41:02 -06:00
mtip32xx block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
paride paride: make 'verbose' parameter an 'int' again 2016-03-15 16:55:16 -07:00
rsxx block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
xen-blkback xen: features and fixes for 4.8-rc0 2016-07-27 11:35:37 -07:00
zram block/mm: make bdev_ops->rw_page() take a bool for read/write 2016-08-07 14:41:02 -06:00
amiflop.c block: drop owner assignment from platform_drivers 2014-10-20 16:20:18 +02:00
ataflop.c
brd.c block/mm: make bdev_ops->rw_page() take a bool for read/write 2016-08-07 14:41:02 -06:00
cciss_cmd.h
cciss_scsi.c scsi: Do not set cmd_per_lun to 1 in the host template 2015-05-31 18:06:28 -07:00
cciss_scsi.h
cciss.c block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
cciss.h
cryptoloop.c block: cryptoloop - Use new skcipher interface 2016-01-27 20:35:43 +08:00
DAC960.c
DAC960.h
floppy.c floppy: fix open(O_ACCMODE) for ioctl-only open 2016-08-04 14:19:16 -06:00
hd.c
Kconfig cpqarray: remove it from the kernel 2016-03-14 09:06:01 -06:00
loop.c loop: make do_req_filebacked more robust 2016-08-04 14:19:16 -06:00
loop.h block: loop: support DIO & AIO 2015-09-23 11:01:16 -06:00
Makefile drivers:block: cpqarray clean up 2016-03-15 15:59:47 -07:00
mg_disk.c mg_disk: fix error path in mg_probe() 2016-06-28 11:01:27 -06:00
nbd.c nbd: fix race in ioctl 2016-08-04 14:19:16 -06:00
null_blk.c block: get rid of bio_rw and READA 2016-07-20 17:37:01 -06:00
osdblk.c block, drivers: add REQ_OP_FLUSH operation 2016-06-07 13:41:38 -06:00
pktcdvd.c block: rename bio bi_rw to bi_opf 2016-08-07 14:41:02 -06:00
ps3disk.c block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
ps3vram.c block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
rbd_types.h
rbd.c The highlights are: 2016-08-02 19:39:09 -04:00
skd_main.c block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
skd_s1120.h
smart1,2.h
sunvdc.c block: convert to device_add_disk() 2016-06-27 12:26:08 -07:00
swim3.c powerpc: Move Power Macintosh drivers to generic byteswappers 2015-03-23 14:29:40 +11:00
swim_asm.S
swim.c block: drop owner assignment from platform_drivers 2014-10-20 16:20:18 +02:00
sx8.c sx8: use real time for the command seconds 2015-12-23 08:42:59 -07:00
umem.c block: rename bio bi_rw to bi_opf 2016-08-07 14:41:02 -06:00
umem.h
virtio_blk.c virtio_blk: Fix a slient kernel panic 2016-08-09 13:42:39 +03:00
xen-blkfront.c xen: features and fixes for 4.8-rc0 2016-07-27 11:35:37 -07:00
xsysace.c
z2ram.c