linux/drivers/block
Dongli Zhang 4a8c31a1c6 xen/blkback: rework connect_ring() to avoid inconsistent xenstore 'ring-page-order' set by malicious blkfront
The xenstore 'ring-page-order' is used globally for each blkback queue and
therefore should be read from xenstore only once. However, it is obtained
in read_per_ring_refs() which might be called multiple times during the
initialization of each blkback queue.

If the blkfront is malicious and the 'ring-page-order' is set in different
value by blkfront every time before blkback reads it, this may end up at
the "WARN_ON(i != (XEN_BLKIF_REQS_PER_PAGE * blkif->nr_ring_pages));" in
xen_blkif_disconnect() when frontend is destroyed.

This patch reworks connect_ring() to read xenstore 'ring-page-order' only
once.

Signed-off-by: Dongli Zhang <dongli.zhang@oracle.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
2019-02-24 10:17:56 -05:00
..
aoe aoe: add __exit annotation 2018-12-16 09:01:38 -07:00
drbd for-4.21/block-20190102 2019-01-02 18:49:58 -08:00
mtip32xx mtip32xx: use BLK_STS_DEV_RESOURCE for device resources 2018-12-10 14:45:19 -07:00
paride pd: replace ->special use with private data in the request 2018-11-10 08:03:50 -07:00
rsxx pci-v4.20-changes 2018-10-25 06:50:48 -07:00
xen-blkback xen/blkback: rework connect_ring() to avoid inconsistent xenstore 'ring-page-order' set by malicious blkfront 2019-02-24 10:17:56 -05:00
zram zram: idle writeback fixes and cleanup 2019-01-08 17:15:10 -08:00
amiflop.c block/amiflop: Don't log error message on invalid ioctl 2018-12-31 10:19:11 -07:00
ataflop.c ataflop: implement mq_ops->commit_rqs() hook 2018-11-29 10:12:27 -07:00
brd.c block: brd: associate with queue until adding disk 2018-11-01 19:59:51 -06:00
cryptoloop.c block: cryptoloop: Remove VLA usage of skcipher 2018-09-28 12:46:07 +08:00
floppy.c Linux 4.20-rc3 2018-11-18 15:46:03 -07:00
Kconfig drivers/block: Remove DAC960 driver 2018-10-17 09:42:30 -06:00
loop.c loop: drop caches if offset or block_size are changed 2019-01-09 20:51:44 -07:00
loop.h block/loop: Use global lock for ioctl() operation. 2018-11-08 06:30:11 -07:00
Makefile drivers/block: Remove DAC960 driver 2018-10-17 09:42:30 -06:00
nbd.c blk-mq-tag: change busy_iter_fn to return whether to continue or not 2018-11-08 10:24:07 -07:00
null_blk.h null_blk: add zoned config support information 2019-01-06 10:58:27 -07:00
null_blk_main.c block: remove the lock argument to blk_alloc_queue_node 2018-11-15 12:13:35 -07:00
null_blk_zoned.c null_blk: Add conventional zone configuration for zoned support 2018-11-07 13:41:50 -07:00
pktcdvd.c pktcdvd: remove queue_lock around blk_queue_max_hw_sectors 2018-11-16 09:16:59 -07:00
ps3disk.c ps3disk: convert to blk-mq 2018-10-15 20:07:56 -06:00
ps3vram.c block: genhd: add 'groups' argument to device_add_disk 2018-09-28 08:30:28 -06:00
rbd.c rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set 2019-01-10 09:45:09 +01:00
rbd_types.h
skd_main.c cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
skd_s1120.h
sunvdc.c block: sunvdc: don't run hw queue synchronously from irq context 2019-01-03 08:21:47 -07:00
swim.c swim: convert to blk-mq 2018-10-16 09:49:18 -06:00
swim3.c block/swim3: Fix regression on PowerBook G3 2018-12-31 10:19:19 -07:00
swim_asm.S
sx8.c sx8: use a per-host tag_set 2018-11-09 08:14:14 -07:00
umem.c block: remove the lock argument to blk_alloc_queue_node 2018-11-15 12:13:35 -07:00
umem.h
virtio_blk.c virtio, vhost: features, fixes, cleanups 2019-01-02 18:54:45 -08:00
xen-blkfront.c xen: fixes for 4.20-rc2 2018-11-10 08:58:48 -06:00
xsysace.c xsysace: convert to blk-mq 2018-10-15 20:08:24 -06:00
z2ram.c powerpc updates for 4.20 2018-10-26 14:36:21 -07:00