Re: [LTP] [linux-next:master] [scsi] eca2040972: ltp.ioprio_set03.fail

Niklas Cassel
2023-06-21T15:33:48Z

On Wed, Jun 21, 2023 at 02:47:43PM +0200, Cyril Hrubis wrote:
> Hi!
> > > kernel test robot noticed "ltp.ioprio_set03.fail" on:
> >
> > LTP maintainers,
> >
> > Patches have been submitted to fix this issue. Were these patches applied ?
>
> Looks like they are in, at least these two:
>
> ioprio: use ioprio.h kernel header if it exists
> ioprio: Use IOPRIO_PRIO_NUM to check prio range
>
> And there does not seem to be anything ioprio related haning in the LTP
> patchwork.

Hello Cyril, Petr, Damien,

I just ran LTP master + linux-next and the test case passes for me.

Although, note that even if you are using LTP master,
the way that the LTP header:
testcases/kernel/syscalls/ioprio/ioprio.h
is written, you will need to run

make headers_install
with linux-next kernel source,

before running
make autotools && ./configure
in LTP.

Otherwise LTP will use the kernel uapi headers from your distro,
which does not perform the new checks for the IOPRIO_PRIO_VALUE()
macro. (It requires linux uapi headers from linux-next.)

Does the linux kernel test robot not run
make headers_install
before running
make autotools && ./configure
in LTP?

One option, although I'm not sure if we want this,
is to change
testcases/kernel/syscalls/ioprio/ioprio.h
to do something like:

#ifndef IOPRIO_BAD_VALUE
# define IOPRIO_BAD_VALUE(val, max) ((val) < 0 || (val) >= (max))
#endif

such that LTP does not need to be compiled against the kernel uapi
headers that match the running kernel.

But... shouldn't the installed uapi headers match the running kernel?

Kind regards,
Niklas