Since this is requested for the common branches and
hence all BSPs (This is the right place for a patch
like this) ... can you provide some extra context
about how they were identified (and tested).

Similar to my earlier comment, these in theory should
be nominated for -stable.

Bruce

In message: [linux-yocto][v5.10/standard/base && 
v5.10/standard/preempt-rt/base][PATCH  1/2]  blk-mq: Introduce the 
BLK_MQ_F_NO_SCHED_BY_DEFAULT flag
on 12/03/2024 Wentao Zhang wrote:

> From: Bart Van Assche <bvanass...@acm.org>
> 
> commit 90b7198001f23ea37d3b46dc631bdaa2357a20b1 upstream.
> 
> elevator_get_default() uses the following algorithm to select an I/O
> scheduler from inside add_disk():
> - In case of a single hardware queue or if sharing hardware queues across
>   multiple request queues (BLK_MQ_F_TAG_HCTX_SHARED), use mq-deadline.
> - Otherwise, use 'none'.
> 
> This is a good choice for most but not for all block drivers. Make it
> possible to override the selection of mq-deadline with a new flag,
> namely BLK_MQ_F_NO_SCHED_BY_DEFAULT.
> 
> Cc: Christoph Hellwig <h...@lst.de>
> Cc: Ming Lei <ming....@redhat.com>
> Cc: Tetsuo Handa <penguin-ker...@i-love.sakura.ne.jp>
> Cc: Martijn Coenen <m...@android.com>
> Cc: Jaegeuk Kim <jaeg...@kernel.org>
> Signed-off-by: Bart Van Assche <bvanass...@acm.org>
> Link: https://lore.kernel.org/r/20210805174200.3250718-2-bvanass...@acm.org
> Signed-off-by: Jens Axboe <ax...@kernel.dk>
> Signed-off-by: Wentao Zhang <wentao.zh...@windriver.com>
> ---
>  block/elevator.c       | 3 +++
>  include/linux/blk-mq.h | 6 ++++++
>  2 files changed, 9 insertions(+)
> 
> diff --git a/block/elevator.c b/block/elevator.c
> index 2f962662c32a..f762b2af1d2a 100644
> --- a/block/elevator.c
> +++ b/block/elevator.c
> @@ -622,6 +622,9 @@ static inline bool elv_support_iosched(struct 
> request_queue *q)
>   */
>  static struct elevator_type *elevator_get_default(struct request_queue *q)
>  {
> +     if (q->tag_set && q->tag_set->flags & BLK_MQ_F_NO_SCHED_BY_DEFAULT)
> +             return NULL;
> +
>       if (q->nr_hw_queues != 1)
>               return NULL;
>  
> diff --git a/include/linux/blk-mq.h b/include/linux/blk-mq.h
> index f8ea27423d1d..39526279fbd3 100644
> --- a/include/linux/blk-mq.h
> +++ b/include/linux/blk-mq.h
> @@ -398,7 +398,13 @@ enum {
>       BLK_MQ_F_STACKING       = 1 << 2,
>       BLK_MQ_F_TAG_HCTX_SHARED = 1 << 3,
>       BLK_MQ_F_BLOCKING       = 1 << 5,
> +     /* Do not allow an I/O scheduler to be configured. */
>       BLK_MQ_F_NO_SCHED       = 1 << 6,
> +     /*
> +      * Select 'none' during queue registration in case of a single hwq
> +      * or shared hwqs instead of 'mq-deadline'.
> +      */
> +     BLK_MQ_F_NO_SCHED_BY_DEFAULT    = 1 << 7,
>       BLK_MQ_F_ALLOC_POLICY_START_BIT = 8,
>       BLK_MQ_F_ALLOC_POLICY_BITS = 1,
>  
> -- 
> 2.31.1
> 
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#13675): 
https://lists.yoctoproject.org/g/linux-yocto/message/13675
Mute This Topic: https://lists.yoctoproject.org/mt/104880299/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to