Re: [PATCH v2 4/5] cmdprio: Add support for per I/O priority hint

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

 



On 7/19/23 7:31?PM, Damien Le Moal wrote:
> diff --git a/engines/io_uring.c b/engines/io_uring.c
> index f30a3c00..d55af6bc 100644
> --- a/engines/io_uring.c
> +++ b/engines/io_uring.c
> @@ -157,6 +157,21 @@ static struct fio_option options[] = {
>  		.category = FIO_OPT_C_ENGINE,
>  		.group	= FIO_OPT_G_IOURING,
>  	},
> +	{
> +		.name	= "cmdprio_hint",
> +		.lname	= "Asynchronous I/O priority hint",
> +		.type	= FIO_OPT_INT,
> +		.off1	= offsetof(struct ioring_options,
> +				   cmdprio_options.hint[DDIR_READ]),
> +		.off2	= offsetof(struct ioring_options,
> +				   cmdprio_options.hint[DDIR_WRITE]),
> +		.help	= "Set asynchronous IO priority hint",
> +		.minval	= IOPRIO_MIN_PRIO_HINT,
> +		.maxval	= IOPRIO_MAX_PRIO_HINT,
> +		.interval = 1,
> +		.category = FIO_OPT_C_ENGINE,
> +		.group	= FIO_OPT_G_IOURING,
> +	},
>  	{
>  		.name	= "cmdprio",
>  		.lname	= "Asynchronous I/O priority level",
> @@ -195,6 +210,12 @@ static struct fio_option options[] = {
>  		.type	= FIO_OPT_UNSUPPORTED,
>  		.help	= "Your platform does not support I/O priority classes",
>  	},
> +	{
> +		.name	= "cmdprio_hint",
> +		.lname	= "Asynchronous I/O priority hint",
> +		.type	= FIO_OPT_UNSUPPORTED,
> +		.help	= "Your platform does not support I/O priority classes",
> +	},
>  	{
>  		.name	= "cmdprio",
>  		.lname	= "Asynchronous I/O priority level",

Since neither this nor libaio actually do anything with these values,
why isn't this just a generic option? You could flag the two engines
where it actually works with an engine flag, and check if it's set and
we don't have that flag and error out in the generic code.

-- 
Jens Axboe




[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux