[PATCH blktests 0/2] Test multipath and marginal ports

Jesse Taube jtaubepe at redhat.com
Tue Aug 18 08:46:42 PDT 2026


On Tue, Aug 18, 2026 at 9:05 AM Shin'ichiro Kawasaki
<shinichiro.kawasaki at wdc.com> wrote:
>
> On Aug 17, 2026 / 15:33, Jesse Taube wrote:
> > On Mon, Aug 17, 2026 at 3:39 AM Shin'ichiro Kawasaki
> > <shinichiro.kawasaki at wdc.com> wrote:
> ...
> > > After I rebased to v7.2 kernel, it shows a bit different message:
> > >
> > > nvme/070 (tr=fc) (test nvme-fc marginal path handling)       [failed]
> > >     runtime  37.200s  ...  38.926s
> > >     --- tests/nvme/070.out      2026-08-17 11:13:53.073000000 +0900
> > >     +++ /home/shin/Blktests/blktests/results/nodev_tr_fc/nvme/070.out.bad       2026-08-17 16:34:17.997000000 +0900
> > >     @@ -3,10 +3,14 @@
> > >      Testing iopolicy: numa
> > >      Changing FC links to online
> > >      Set all online: pass
> > >     -One host marginal: pass
> > >     +FC port on (/sys/class/nvme-subsystem/nvme-subsys6/nvme6) is being used, expected no use.
> > >     +One host marginal: fail
> > >      All marginal: pass
> > >     ...
> > >     (Run 'diff -u tests/nvme/070.out /home/shin/Blktests/blktests/results/nodev_tr_fc/nvme/070.out.bad' to see the entire diff)
> > >
> > > > Maybe the links are still connecting?
> > >
> > > Should I try to add some sleeps in the test script? If so, could you suggest
> > > where to put the sleeps?
> >
> > maybe add a delay before the cat command in _rport_in_use it might take a second
> > for the io to move paths
>
> Thanks. I tried the patch below.
>
> diff --git a/tests/nvme/070 b/tests/nvme/070
> index 0672667..085ba70 100755
> --- a/tests/nvme/070
> +++ b/tests/nvme/070
> @@ -73,10 +73,16 @@ _rport_is_marginal() {
>
>  _rport_in_use() {
>         local SUBSYS_PATH=$1 # /sys/devices/virtual/nvme-subsystem/nvme-subsys3/nvme9
> +       local ret
>
>         # there should only be one "nvme3c9n1" afaik
>         [[ "$(cat "$SUBSYS_PATH"/nvme*/stat | awk '{print $9}')" != "0" ]]
>         # Returns exit code 0 if in use, 1 if not in use
> +       ret=$?
> +
> +       sleep 3
> +
> +       return $ret
>  }
>
>
> And I got this result:
>
> nvme/070 (tr=fc) (test nvme-fc marginal path handling)       [failed]
>     runtime  34.657s  ...  224.569s
>     --- tests/nvme/070.out      2026-08-18 21:38:49.298000000 +0900
>     +++ /home/shin/Blktests/blktests/results/nodev_tr_fc/nvme/070.out.bad       2026-08-18 21:49:55.655000000 +0900
>     @@ -5,39 +5,66 @@
>      Set all online: pass
>      One host marginal: pass
>      All marginal: pass
>     -One remote non-optimized online: pass
>     -Two remote non-optimized online: pass
>     +FC port on (/sys/class/nvme-subsystem/nvme-subsys5/nvme7) is not being used, expected use.
>     +One remote non-optimized online: fail
>     ...
>     (Run 'diff -u tests/nvme/070.out /home/shin/Blktests/blktests/results/nodev_tr_fc/nvme/070.out.bad' to see the entire diff)
>
>
> The result look a bit better (One host marginal: pass), but still I see other
> items fail.
>
> >
> > > If it helps, I will share the kernel config I use. If you want it, please let
> > > me know.
> >
> > That would be good.
>
> Okay, please find the kernel config attached.
>
> > Im using the base centos10 config with
> > https://github.com/Mr-Bossman/linux/tree/dev/jesse/fpin_v11k
>
> Thanks, will try it out later.

No need to test i figured out the issue, it is a timeing thing. I will
send changes soon

Thanks,
Jesse Taube




More information about the Linux-nvme mailing list