[PATCH 05/11] block: add a store_limit operations for sysfs entries

John Garry john.g.garry at oracle.com
Fri Jan 10 01:15:09 PST 2025


On 10/01/2025 05:47, Christoph Hellwig wrote:
> De-duplicate the code for updating queue limits by adding a store_limit
> method that allows having common code handle the actual queue limits
> update.
> 
> Note that this is a pure refactoring patch and does not address the
> existing freeze vs limits lock order problem in the refactored code,
> which will be addressed next.
> 
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> Reviewed-by: Ming Lei <ming.lei at redhat.com>
> Reviewed-by: Damien Le Moal <dlemoal at kernel.org>
> Reviewed-by: Martin K. Petersen <martin.petersen at oracle.com>
> Reviewed-by: Nilay Shroff <nilay at linux.ibm.com>
> Reviewed-by: Johannes Thumshirn <johannes.thumshirn at wdc.com>

Apart from the comment on types, below:
Reviewed-by: John Garry <john.g.garry at oracle.com>

> ---
>   block/blk-sysfs.c | 128 ++++++++++++++++++++++------------------------
>   1 file changed, 61 insertions(+), 67 deletions(-)
> 
> diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
> index e9f1c82b2f3e..d2aa2177e4ba 100644
> --- a/block/blk-sysfs.c
> +++ b/block/blk-sysfs.c
> @@ -24,6 +24,8 @@ struct queue_sysfs_entry {
>   	struct attribute attr;
>   	ssize_t (*show)(struct gendisk *disk, char *page);
>   	ssize_t (*store)(struct gendisk *disk, const char *page, size_t count);
> +	int (*store_limit)(struct gendisk *disk, const char *page,

I don't really see why this returns an int, while the queue features 
callback methods return a ssize_t. I know that the res variable in 
queue_attr_store() gets mixed with an int for updating the queue limits, 
but I don't see that as a reason to use int here.

> +			size_t count, struct queue_limits *lim);
>   	void (*load_module)(struct gendisk *disk, const char *page, size_t count);
>   };
>   
> @@ -153,13 +155,11 @@ QUEUE_SYSFS_SHOW_CONST(discard_zeroes_data, 0)
>   QUEUE_SYSFS_SHOW_CONST(write_same_max, 0)
>   QUEUE_SYSFS_SHOW_CONST(poll_delay, -1)
>   




More information about the Linux-nvme mailing list