Re: [PATCH 5/8] blk-ioprio: Remove unneeded field

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6/21/22 01:11, Jan Kara wrote:
> blkcg->ioprio_set field is not really useful except for avoiding
> possibly more expensive checks inside blkcg_ioprio_track(). The check
> for blkcg->prio_policy being equal to POLICY_NO_CHANGE does the same
> service so just remove the ioprio_set field and replace the check.
> 
> Signed-off-by: Jan Kara <jack@xxxxxxx>

Looks good to me.

Reviewed-by: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx>

> ---
>  block/blk-ioprio.c | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/block/blk-ioprio.c b/block/blk-ioprio.c
> index 79e797f5d194..3f605583598b 100644
> --- a/block/blk-ioprio.c
> +++ b/block/blk-ioprio.c
> @@ -62,7 +62,6 @@ struct ioprio_blkg {
>  struct ioprio_blkcg {
>  	struct blkcg_policy_data cpd;
>  	enum prio_policy	 prio_policy;
> -	bool			 prio_set;
>  };
>  
>  static inline struct ioprio_blkg *pd_to_ioprio(struct blkg_policy_data *pd)
> @@ -113,7 +112,6 @@ static ssize_t ioprio_set_prio_policy(struct kernfs_open_file *of, char *buf,
>  	if (ret < 0)
>  		return ret;
>  	blkcg->prio_policy = ret;
> -	blkcg->prio_set = true;
>  	return nbytes;
>  }
>  
> @@ -193,16 +191,15 @@ static void blkcg_ioprio_track(struct rq_qos *rqos, struct request *rq,
>  	struct ioprio_blkcg *blkcg = ioprio_blkcg_from_bio(bio);
>  	u16 prio;
>  
> -	if (!blkcg->prio_set)
> +	if (blkcg->prio_policy == POLICY_NO_CHANGE)
>  		return;
>  
>  	/*
>  	 * Except for IOPRIO_CLASS_NONE, higher I/O priority numbers
>  	 * correspond to a lower priority. Hence, the max_t() below selects
>  	 * the lower priority of bi_ioprio and the cgroup I/O priority class.
> -	 * If the cgroup policy has been set to POLICY_NO_CHANGE == 0, the
> -	 * bio I/O priority is not modified. If the bio I/O priority equals
> -	 * IOPRIO_CLASS_NONE, the cgroup I/O priority is assigned to the bio.
> +	 * If the bio I/O priority equals IOPRIO_CLASS_NONE, the cgroup I/O
> +	 * priority is assigned to the bio.
>  	 */
>  	prio = max_t(u16, bio->bi_ioprio,
>  			IOPRIO_PRIO_VALUE(blkcg->prio_policy, 0));


-- 
Damien Le Moal
Western Digital Research



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux