Re: [PATCH REPOST blktests v2 4/9] nvme: Use runtime fio background jobs

From: Daniel Wagner
Date: Tue May 02 2023 - 10:22:50 EST


On Fri, Apr 28, 2023 at 04:29:57AM +0000, Shinichiro Kawasaki wrote:
> On Apr 21, 2023 / 08:57, Daniel Wagner wrote:
> > On Fri, Apr 21, 2023 at 08:29:22AM +0200, Hannes Reinecke wrote:
> > > --- a/tests/nvme/040
> > > > +++ b/tests/nvme/040
> > > > @@ -38,7 +38,8 @@ test() {
> > > > # start fio job
> > > > echo "starting background fio"
> > > > _run_fio_rand_io --filename="/dev/${nvmedev}n1" --size=1g \
> > > > - --group_reporting --ramp_time=5 &> /dev/null &
> > > > + --group_reporting --ramp_time=5 \
> > > > + --time_based --runtime=1m &> /dev/null &
> > > > sleep 5
> > > > # do reset/remove operation
> > >
> > > Wouldn't it be better to let _run_fio_rand_io pick the correct size?
> >
> > Yes, makes sense.
>
> If you do I/O size change for the test cases nvme/032 and nvme/040, could you
> confirm the runtime reduction of the test cases? IIUC, the fio process stops
> due to process kill or an I/O error, then I/O size reduction will not change
> runtime of the test cases, I guess.

The fio process doesn't survive the reset and the deletion of the controller.

> IMO, --time_based --runtime=1m is good to ensure that fio runs long enough,
> even when nvme device size is configured with small size.

I've updated the time to 'infinity' and added a 'kill $pid' after reset and
delete. Though the process should be gone till then but making the test a bit
more robust should hurt.