Re: [PATCH] generic/297: fix the delta time based on stat

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



On Fri, Jun 10, 2022 at 12:36:24PM +0800, Wang Yugui wrote:
> Hi,
> 
> > On Fri, Jun 10, 2022 at 10:35:53AM +0800, Wang Yugui wrote:
> > > stat -c '%Y' report seconds as int, so the delta 2.01s may result as 3s.
> > > 
> > > Signed-off-by: Wang Yugui <wangyugui@xxxxxxxxxxxx>
> > > ---
> > >  tests/generic/297 | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/tests/generic/297 b/tests/generic/297
> > > index 6bdc3e1c..e3082202 100755
> > > --- a/tests/generic/297
> > > +++ b/tests/generic/297
> > > @@ -51,7 +51,7 @@ for i in $(seq 0 $fnr); do
> > >  	touch $TEST_DIR/after
> > >  	before=$(stat -c '%Y' $TEST_DIR/before)
> > >  	after=$(stat -c '%Y' $TEST_DIR/after)
> > > -	delta=$((after - before))
> > > +	delta=$((after - before -1)) # 2.01s may result as 3s; so -1
> > 
> > What issue is this change trying to fix? "timeout=8"s is not long enough?
> 
> for the command
> $TIMEOUT_PROG -s INT ${kill_after}s
> 
> delta=$((after - before )) may report 'kill_after+1' in some case.

Yes, that's what it is supposed to report. The process is
killed 2s after the test starts, so delta is going to be kill_after
+ the delay for the task to exit and the 'touch $TEST_DIR/after'
command to run. This can take a second or two, depending on how fast
the reflink operation is proceeding (e.g. waiting on IO).

> so no relationship to "timeout=8" or "timeout=2".

If the reflink doesn't get killed within 6s then delta will be
greater than the timeout (8) and the test fails. So if delta is 2 or
3, then it makes no difference to the test result, right?

> '$XFS_IO_PROG -f -c reflink' without '$TIMEOUT_PROG -s INT ${kill_after}s'
> may take 20s because this is a very complex reflink.

Yes, and if it takes 20s (i.e. delta=20s) then it means that the
kill signal was not delivered and acted upon correctly and so the
test should fail.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux