Re: [head tinderbox] failure on amd64/amd64

From: Ruslan Ermilov <ru_at_freebsd.org>
Date: Wed, 20 Aug 2008 18:53:52 +0400
On Wed, Aug 20, 2008 at 10:18:30AM +0200, Dag-Erling Sm??rgrav wrote:
> Ruslan Ermilov <ru_at_freebsd.org> writes:
> > "-mtime -0" interacts badly with the TIME_CORRECT() macro when mtime
> > and run-time happen to be the same second.  While I think it's a bug
> > in the find(1) code that needs to be fixed, using "-mtime -0s" seems
> > to avoid the macro and thus works as expected.
> 
-mtime -0s (note the minus before "0s").

> % date ; touch foo ; find foo -mtime 0s ; date ; sleep 1 ; find foo -mtime 0s ; date
> Wed Aug 20 10:09:11 CEST 2008
> foo
> Wed Aug 20 10:09:11 CEST 2008
> Wed Aug 20 10:09:12 CEST 2008
> % date ; touch foo ; find foo -mtime 0s ; date ; sleep 1 ; find foo -mtime 1s ; date
> Wed Aug 20 10:11:23 CEST 2008
> foo
> Wed Aug 20 10:11:23 CEST 2008
> foo
> Wed Aug 20 10:11:24 CEST 2008
> 
> '-mtime Ns' evaluates to true if the difference between current time and
> the file's mtime is *exactly* N seconds.
> 
> '-mtime N' evaluates to true if the difference between current time and
> the file's mtime is between N-1 and N days.
> 
> As written, the test will fail if sys/sys/param.h's mtime is between now
> and 86399 seconds into the future, and succeed otherwise.  If we change
> 0 to 0s, it will fail if sys/sys/param.h's mtime is exactly the current
> time, and succeed otherwise.
> 
> Personally, I think the test is useless, as there are a million other
> ways to mess up your build, but if you absolutely must have it there,
> the correct predicate would be '-newermt now'.
> 
> DES
> -- 
> Dag-Erling Sm??rgrav - des_at_des.no
> 

-- 
Ruslan Ermilov
ru_at_FreeBSD.org
FreeBSD committer
Received on Wed Aug 20 2008 - 12:54:42 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:34 UTC