Re: scsi: block: ioprio: Clean up interface definition - ioprio_set03.c:40: TFAIL: ioprio_set IOPRIO_CLASS_BE prio 8 should not work

From: Naresh Kamboju
Date: Fri Jan 12 2024 - 00:15:29 EST


The LTP test 'iopri_set03' fails on all the devices.
It fails on linux kernel >= v6.5. ( on Debian rootfs ).
Test fail confirmed on LTP release 20230929 and 20230516.

Test failed log:
------------
tst_test.c:1690: TINFO: LTP version: 20230929
tst_test.c:1574: TINFO: Timeout per run is 0h 05m 00s
ioprio_set03.c:40: TFAIL: ioprio_set IOPRIO_CLASS_BE prio 8 should not work
ioprio_set03.c:48: TINFO: tested illegal priority with class NONE
ioprio_set03.c:51: TPASS: returned correct error for wrong prio: EINVAL (22)

Investigation:
----------
Bisecting this test between kernel v6.4 and v6.5 shows patch
eca2040972b4 ("scsi: block: ioprio: Clean up interface definition")
as the first faulty commit.

Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>

Links:
- https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240109/testrun/22021120/suite/ltp-syscalls/test/ioprio_set03/details/
- https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20240110/testrun/22034175/suite/ltp-syscalls/test/ioprio_set03/history/

Steps to reproduce:
---------------
This is how you can reproduce it easily:
Install podman or docker, tuxmake and tuxrun, if docker please change
the --runtime below to docker.
cd into the kernel you want to build:
$ tuxmake --runtime podman --target-arch arm64 --toolchain gcc-13
--kconfig defconfig --results-hook 'tuxrun --runtime podman --device
qemu-arm64 --boot-args rw --tuxmake ./ --rootfs
https://storage.tuxboot.com/debian/bookworm/arm64/rootfs.ext4.xz
--parameters SKIPFILE=skipfile-lkft.yaml --timeouts boot=30 --overlay
https://storage.tuxboot.com/overlays/debian/bookworm/arm64/ltp/20230929/ltp.tar.xz
/ --save-outputs --log-file - -- "cd /opt/ltp && ./runltp -s
ioprio_set03"'


Bisection log:
------------
# bad: [2dde18cd1d8fac735875f2e4987f11817cc0bc2c] Linux 6.5
# good: [6995e2de6891c724bfeb2db33d7b87775f913ad1] Linux 6.4
git bisect start 'v6.5' 'v6.4'
# good: [b775d6c5859affe00527cbe74263de05cfe6b9f9] Merge tag
'mips_6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux
git bisect good b775d6c5859affe00527cbe74263de05cfe6b9f9
# bad: [56cbceab928d7ac3702de172ff8dcc1da2a6aaeb] Merge tag
'usb-6.5-rc1' of
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb
git bisect bad 56cbceab928d7ac3702de172ff8dcc1da2a6aaeb
# good: [b30d7a77c53ec04a6d94683d7680ec406b7f3ac8] Merge tag
'perf-tools-for-v6.5-1-2023-06-28' of
git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next
git bisect good b30d7a77c53ec04a6d94683d7680ec406b7f3ac8
# bad: [dfab92f27c600fea3cadc6e2cb39f092024e1fef] Merge tag
'nfs-for-6.5-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs
git bisect bad dfab92f27c600fea3cadc6e2cb39f092024e1fef
# bad: [28968f384be3c064d66954aac4c534a5e76bf973] Merge tag
'pinctrl-v6.5-1' of
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl
git bisect bad 28968f384be3c064d66954aac4c534a5e76bf973
# bad: [af92c02fb2090692f4920ea4b74870940260cf49] Merge patch series
"scsi: fixes for targets with many LUNs, and scsi_target_block rework"
git bisect bad af92c02fb2090692f4920ea4b74870940260cf49
# bad: [2e2fe5ac695a00ab03cab4db1f4d6be07168ed9d] scsi: 3w-xxxx: Add
error handling for initialization failure in tw_probe()
git bisect bad 2e2fe5ac695a00ab03cab4db1f4d6be07168ed9d
# good: [8759924ddb93498bd5777f0b05b6bc9cacf4ffe3] Merge patch series
"scsi: hisi_sas: Some misc changes"
git bisect good 8759924ddb93498bd5777f0b05b6bc9cacf4ffe3
# good: [7907ad748bdba8ac9ca47f0a650cc2e5d2ad6e24] Merge patch series
"Use block pr_ops in LIO"
git bisect good 7907ad748bdba8ac9ca47f0a650cc2e5d2ad6e24
# bad: [390e2d1a587405a522dc6b433d45648f895a352c] scsi: sd: Handle
read/write CDL timeout failures
git bisect bad 390e2d1a587405a522dc6b433d45648f895a352c
# bad: [734326937b65cec7ffd00bfbbce0f791ac4aac84] scsi: core: Rename
and move get_scsi_ml_byte()
git bisect bad 734326937b65cec7ffd00bfbbce0f791ac4aac84
# bad: [6c913257226a25879bfd6226e0ee265e98904ce6] scsi: block:
Introduce ioprio hints
git bisect bad 6c913257226a25879bfd6226e0ee265e98904ce6
# bad: [eca2040972b411ec27483bf75dc8b84e730e88ff] scsi: block: ioprio:
Clean up interface definition
git bisect bad eca2040972b411ec27483bf75dc8b84e730e88ff
# first bad commit: [eca2040972b411ec27483bf75dc8b84e730e88ff] scsi:
block: ioprio: Clean up interface definition


--
Linaro LKFT
https://lkft.linaro.org