[PATCH 19/26] block: move the nowait flag to queue_limits
Damien Le Moal
dlemoal at kernel.org
Tue Jun 11 10:16:37 CEST 2024
On 6/11/24 2:19 PM, Christoph Hellwig wrote:
> Move the nowait flag into the queue_limits feature field so that it
> can be set atomically and all I/O is frozen when changing the flag.
>
> Stacking drivers are simplified in that they now can simply set the
> flag, and blk_stack_limits will clear it when the features is not
> supported by any of the underlying devices.
>
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> @@ -1825,9 +1815,7 @@ int dm_table_set_restrictions(struct dm_table *t, struct request_queue *q,
> int r;
>
> if (dm_table_supports_nowait(t))
> - blk_queue_flag_set(QUEUE_FLAG_NOWAIT, q);
> - else
> - blk_queue_flag_clear(QUEUE_FLAG_NOWAIT, q);
> + limits->features &= ~BLK_FEAT_NOWAIT;
Shouldn't you set the flag here instead of clearing it ?
--
Damien Le Moal
Western Digital Research
More information about the drbd-dev
mailing list