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