linux/drivers/block
Christoph Hellwig f4829a9b7a blk-mq: fix racy updates of rq->errors
blk_mq_complete_request may be a no-op if the request has already
been completed by others means (e.g. a timeout or cancellation), but
currently drivers have to set rq->errors before calling
blk_mq_complete_request, which might leave us with the wrong error value.

Add an error parameter to blk_mq_complete_request so that we can
defer setting rq->errors until we known we won the race to complete the
request.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2015-10-01 10:10:55 +02:00
..
aoe Revert "block: remove artifical max_hw_sectors cap" 2015-08-18 13:21:13 -07:00
drbd block: kill merge_bvec_fn() completely 2015-08-13 12:31:57 -06:00
mtip32xx mtip32x: fix regression introduced by blk-mq per-hctx flush 2015-08-25 14:35:51 -06:00
paride Char/Misc driver patches for 4.2-rc1 2015-06-26 14:51:15 -07:00
rsxx block: make generic_make_request handle arbitrarily sized bios 2015-08-13 12:31:33 -06:00
xen-blkback Merge branch 'stable/for-jens-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus 2015-09-23 10:59:44 -06:00
zram zram: fix possible use after free in zcomp_create() 2015-09-17 21:16:07 -07:00
DAC960.c
DAC960.h
Kconfig libnvdimm, pmem: move pmem to drivers/nvdimm/ 2015-06-24 21:24:10 -04:00
Makefile libnvdimm, pmem: move pmem to drivers/nvdimm/ 2015-06-24 21:24:10 -04:00
amiflop.c
ataflop.c
brd.c libnvdimm for 4.3: 2015-09-08 14:35:59 -07:00
cciss.c
cciss.h
cciss_cmd.h
cciss_scsi.c
cciss_scsi.h
cpqarray.c
cpqarray.h
cryptoloop.c
floppy.c block: add a bi_error field to struct bio 2015-07-29 08:55:15 -06:00
hd.c
ida_cmd.h
ida_ioctl.h
loop.c blk-mq: fix racy updates of rq->errors 2015-10-01 10:10:55 +02:00
loop.h
mg_disk.c
nbd.c nbd: flags is a u32 variable 2015-08-17 08:23:01 -06:00
null_blk.c blk-mq: fix racy updates of rq->errors 2015-10-01 10:10:55 +02:00
nvme-core.c blk-mq: fix racy updates of rq->errors 2015-10-01 10:10:55 +02:00
nvme-scsi.c Merge branch 'for-4.2/drivers' of git://git.kernel.dk/linux-block 2015-06-25 15:12:50 -07:00
osdblk.c
pktcdvd.c block: kill merge_bvec_fn() completely 2015-08-13 12:31:57 -06:00
ps3disk.c
ps3vram.c block: make generic_make_request handle arbitrarily sized bios 2015-08-13 12:31:33 -06:00
rbd.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2015-09-11 12:33:03 -07:00
rbd_types.h
skd_main.c block: have drivers use blk_queue_max_discard_sectors() 2015-07-17 08:41:53 -06:00
skd_s1120.h
smart1,2.h
sunvdc.c
swim.c
swim3.c
swim_asm.S
sx8.c
umem.c block: make generic_make_request handle arbitrarily sized bios 2015-08-13 12:31:33 -06:00
umem.h
virtio_blk.c blk-mq: fix racy updates of rq->errors 2015-10-01 10:10:55 +02:00
xen-blkfront.c blk-mq: fix racy updates of rq->errors 2015-10-01 10:10:55 +02:00
xsysace.c
z2ram.c