Re: "blk-mq: fix tag_get wait task can't be awakened" causes hangs
From: Alex Xu (Hello71)
Date: Tue Jan 25 2022 - 10:18:24 EST
Excerpts from QiuLaibin's message of January 24, 2022 11:08 pm:
> Hi Alex
>
> 1、Please help to import this structure:
>
> blk_mq_tags <= request_queue->blk_mq_hw_ctx->blk_mq_tags
I don't understand what you mean.
> If there is no kernel dump, help to see the value of
>
> cat /sys/block/sda/mq/0/nr_tags
> __ <= Change it to the problem device
The affected device returns 1. My understanding is that mq does not work
with legacy non-UAS devices.
> And how many block devices in total by lsblk.
My device topology roughly looks like:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 [snip] 0 disk
├─sda1 8:1 0 [snip] 0 part
├─sda2 8:2 0 [snip] 0 part
└─sda3 8:3 0 [snip] 0 part
sdb 8:16 0 [snip] 0 disk
├─sdb1 8:17 0 [snip] 0 part
├─sdb2 8:18 0 [snip] 0 part
├─sdb3 8:19 0 [snip] 0 part
└─sdb4 8:20 0 [snip] 0 part
sdc 8:32 1 [snip] 0 disk
├─sdc1 8:33 1 [snip] 0 part
└─sdc2 8:34 1 [snip] 0 part
nvme0n1 259:0 0 [snip] 0 disk
├─nvme0n1p1 259:1 0 [snip] 0 part
└─nvme0n1p2 259:2 0 [snip] 0 part
└─root 254:0 0 [snip] 0 crypt /
> 2、Please describe in detail how to reproduce the issue,
1. Plug in the device.
2. Execute Show Blocked Tasks. udev is stuck.
> And what type of USB device?
It is a cheap unbranded USB flash drive.
> 3、Please help to try the attachment patch and see if it can be reproduced.
>From a quick test, it appears to resolve the issue.
> Thanks.
Cheers,
Alex.