Thread (9 messages) 9 messages, 5 authors, 2021-11-10

Re: sorting out the freeze / quiesce mess

From: Max Gurtovoy <mgurtovoy@nvidia.com>
Date: 2021-11-10 13:30:52
Also in: linux-nvme, linux-scsi

On 11/10/2021 11:14 AM, Christoph Hellwig wrote:
Hi Jens and Ming,

I've been looking into properly supporting queue freezing for bio based
drivers (that is only release q_usage_counter on bio completion for them).
And the deeper I look into the code the more I'm confused by us having
the blk_mq_quiesce* interface in addition to blk_freeze_queue.  What
is a good reason to do a quiesce separately from a freeze?
I think that quiesce_q will guarantee that no new requests will be 
passed to LLD (completions can still arrive from LLD).

And freeze_q will notify that the internal request_q state will not 
change and completions will not arrive from LLD (and if they will, the 
block layer can ignore it).

At least this is what we aim to do in other areas such as Live migration.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help