Re: [dm-devel] dm-mq and end_clone_request()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/20/2016 07:27 AM, Mike Snitzer wrote:
On Wed, Jul 20 2016 at 10:08am -0400,
Mike Snitzer <snitzer@xxxxxxxxxx> wrote:
[ ... ]
diff --git a/drivers/md/dm-rq.c b/drivers/md/dm-rq.c
index 7a96618..347ff25 100644
--- a/drivers/md/dm-rq.c
+++ b/drivers/md/dm-rq.c
@@ -414,7 +414,7 @@ static void dm_complete_request(struct request *rq, int error)
 	if (!rq->q->mq_ops)
 		blk_complete_request(rq);
 	else
-		blk_mq_complete_request(rq, error);
+		blk_mq_complete_request(rq, 0);
 }

 /*

Hello Mike,

Thanks for the patch. But unfortunately even with this patch applied I see fio reporting I/O errors when run on top of dm-mq after a (simulated) cable pull. I think these errors occur because dm_softirq_done() fails requests if clone == NULL and tio->error != NULL. Adding WARN_ON_ONCE(error && !tio->clone) in dm_complete_request() produced the following call stack:

Workqueue: kblockd blk_mq_run_work_fn
Call Trace:
 [<ffffffff8132aa27>] dump_stack+0x68/0xa1
 [<ffffffff81061ed6>] __warn+0xc6/0xe0
 [<ffffffff81061fa8>] warn_slowpath_null+0x18/0x20
 [<ffffffffa0253fda>] dm_complete_request+0x8a/0xb0 [dm_mod]
 [<ffffffffa0255200>] map_request+0x70/0x2e0 [dm_mod]
 [<ffffffffa025771d>] dm_mq_queue_rq+0x7d/0x120 [dm_mod]
 [<ffffffff8131195a>] __blk_mq_run_hw_queue+0x1da/0x350
 [<ffffffff813120a0>] blk_mq_run_work_fn+0x10/0x20
 [<ffffffff8107f279>] process_one_work+0x1f9/0x6a0
 [<ffffffff8107f769>] worker_thread+0x49/0x490
 [<ffffffff81085f7a>] kthread+0xea/0x100
 [<ffffffff8162faff>] ret_from_fork+0x1f/0x40

Please let me know if you need more information.

Thanks,

Bart.

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux