[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1643040870.3bwvk3sis4.none@localhost>
Date: Mon, 24 Jan 2022 11:24:24 -0500
From: "Alex Xu (Hello71)" <alex_y_xu@...oo.ca>
To: Laibin Qiu <qiulaibin@...wei.com>, axboe@...nel.dk,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
linux-block@...r.kernel.org
Cc: john.garry@...wei.com, ming.lei@...hat.com,
martin.petersen@...cle.com, hare@...e.de,
akpm@...ux-foundation.org, bvanassche@....org,
linux-kernel@...r.kernel.org
Subject: "blk-mq: fix tag_get wait task can't be awakened" causes hangs
Hi,
Recently on torvalds master, I/O on USB flash drives started hanging
here:
task:systemd-udevd state:D stack: 0 pid: 374 ppid: 347 flags:0x00004000
Call Trace:
<TASK>
? __schedule+0x319/0x4a0
? schedule+0x77/0xa0
? io_schedule+0x43/0x60
? blk_mq_get_tag+0x175/0x2b0
? mempool_alloc+0x33/0x170
? init_wait_entry+0x30/0x30
? __blk_mq_alloc_requests+0x1b4/0x220
? blk_mq_submit_bio+0x213/0x490
? submit_bio_noacct+0x22c/0x270
? xa_load+0x48/0x80
? mpage_readahead+0x114/0x130
? blkdev_fallocate+0x170/0x170
? read_pages+0x48/0x1d0
? page_cache_ra_unbounded+0xee/0x1f0
? force_page_cache_ra+0x68/0xc0
? filemap_read+0x18c/0x9a0
? blkdev_read_iter+0x4e/0x120
? vfs_read+0x265/0x2d0
? ksys_read+0x50/0xa0
? do_syscall_64+0x62/0x90
? do_user_addr_fault+0x271/0x3c0
? asm_exc_page_fault+0x8/0x30
? exc_page_fault+0x58/0x80
? entry_SYSCALL_64_after_hwframe+0x44/0xae
</TASK>
mount(8) hangs with a similar backtrace, making the device effectively
unusable. It does not seem to affect NVMe or SATA attached drives. The
affected drive does not support UAS. I don't currently have UAS drives
to test with. The default I/O scheduler is set to noop.
I found that reverting 180dccb0dba4 ("blk-mq: fix tag_get wait
task can't be awakened") appears to resolve the issue.
Let me know what other information is needed.
Cheers,
Alex.
Powered by blists - more mailing lists