diff options
author | Mike Snitzer <snitzer@redhat.com> | 2016-11-23 19:51:09 +0100 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2016-12-08 20:12:52 +0100 |
commit | 6936c12cf809850180b24947271b8f068fdb15e9 (patch) | |
tree | bd761b5f771b2c79b445814772e955cd97d43606 /drivers/scsi/initio.c | |
parent | dm mpath: do not modify *__clone if blk_mq_alloc_request() fails (diff) | |
download | linux-6936c12cf809850180b24947271b8f068fdb15e9.tar.xz linux-6936c12cf809850180b24947271b8f068fdb15e9.zip |
dm table: fix 'all_blk_mq' inconsistency when an empty table is loaded
An earlier DM multipath table could have been build ontop of underlying
devices that were all using blk-mq. In that case, if that active
multipath table is replaced with an empty DM multipath table (that
reflects all paths have failed) then it is important that the
'all_blk_mq' state of the active table is transfered to the new empty DM
table. Otherwise dm-rq.c:dm_old_prep_tio() will incorrectly clone a
request that isn't needed by the DM multipath target when it is to issue
IO to an underlying blk-mq device.
Fixes: e83068a5 ("dm mpath: add optional "queue_mode" feature")
Cc: stable@vger.kernel.org # 4.8+
Reported-by: Bart Van Assche <bart.vanassche@sandisk.com>
Tested-by: Bart Van Assche <bart.vanassche@sandisk.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/scsi/initio.c')
0 files changed, 0 insertions, 0 deletions