Thread (34 messages) 34 messages, 10 authors, 2019-03-21

Re: [PATCH 0/8]: blk-mq: use static_rqs to iterate busy tags

From: Keith Busch <kbusch@kernel.org>
Date: 2019-03-19 15:24:42
Also in: linux-nvme, lkml

On Tue, Mar 19, 2019 at 08:10:22AM -0700, Bart Van Assche wrote:
On Tue, 2019-03-19 at 09:25 +0800, jianchao.wang wrote:
quoted
Do you mean this patch from Jens ?
https://marc.info/?l=linux-block&m=154534605914798&w=2

+	rcu_read_lock();
 	sbitmap_for_each_set(&bt->sb, bt_iter, &iter_data);
+	rcu_read_unlock();

The busy_iter_fn could sleep for nvme
blk_mq_check_expired
  -> blk_mq_rq_timed_out
    -> q->mq_ops->timeout
       nvme_timeout
         -> nvme_dev_disable
            -> mutex_lock dev->shutdown_lock
Hi Jianchao,

I think that's an additional reason to rewrite NVMe error handling ...
Nonesense. Block timeout handling runs in a work queue precicesly so
handlers can actually do useful work in line with the notification.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help