Re: [PATCH blktests 2/3] Add I/O scheduler tests for queue depth 1

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

 



On Apr 28, 2022 / 12:52, Bart Van Assche wrote:
> On 4/27/22 23:27, Shinichiro Kawasaki wrote:
> > On Apr 27, 2022 / 14:31, Bart Van Assche wrote:
> > > Some block devices, e.g. USB sticks, only support queue depth 1. The
> > > QD=1 code paths do not get tested routinely. Hence add tests for the
> > > QD=1 use case.
> > > 
> > > Signed-off-by: Bart Van Assche <bvanassche@xxxxxxx>
> > 
> > I tried this new test case on recent Fedora kernel 5.16.20-200.fc35.x86_64 and
> > Intel Core i9 machine, then observed failure:
> > 
> > $ sudo ./check block/032
> > block/032 (test I/O scheduler performance of null_blk with queue_depth 1) [failed]
> >      bfq          679 vs 243: fail  ...  679 vs 252: fail
> >      kyber        542 vs 243: fail  ...  551 vs 252: fail
> >      mq-deadline  577 vs 243: fail  ...  572 vs 252: fail
> >      runtime      20.514s           ...  20.660s
> >      --- tests/block/032.out     2022-04-27 22:02:46.602861565 -0700
> >      +++ /home/shin/kts/kernel-test-suite/src/blktests/results/nodev/block/032.out.bad2022-04-27 23:18:48.470170788 -0700
> >      @@ -1,2 +1,2 @@
> >       Running block/032
> >      -Test complete
> >      +Test failed
> > 
> > I tried v5.18-rcX kernel versions and machines (QEMU or VMware) but the test
> > case failed on all of the trials. Do I miss anything to make the test case pass?
> 
> Hi Shinichiro,
> 
> The two tests added by this patch pass when using the legacy block layer
> (kernel v4.19) but not when using blk-mq. I see this as a (performance) bug
> in blk-mq. With blk-mq an excessive number of queue runs is triggered for
> QD=1 if multiple processes try to submit I/O concurrently.

Thanks. So we need the fix in blk-mq before we merge this test case to blktests.

-- 
Best Regards,
Shin'ichiro Kawasaki



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux