In some cases, like whenever devfs file times are zero, the fix(aa) will not

be applied to dev entries.  This leaves us with file times like "Jan 1 1970."
Work around this problem by replacing the tv_sec == 0 check with a
<= 3600 check.  It's doubtful anyone will be booting within an hour of the
Epoch, let alone care about a few seconds worth of nonzero timestamps.  It's
a hackish work around, but it does work and I have not experienced any
negatives in my testing.

Discussed with:	bde
"Ok with me:	phk
This commit is contained in:
Tom Rhodes 2007-04-20 01:47:05 +00:00
parent 9d2d90cb79
commit 164554dec4
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=168884

View File

@ -425,7 +425,7 @@ devfs_getattr(struct vop_getattr_args *ap)
#define fix(aa) \
do { \
if ((aa).tv_sec == 0) { \
if ((aa).tv_sec <= 3600) { \
(aa).tv_sec = boottime.tv_sec; \
(aa).tv_nsec = boottime.tv_usec * 1000; \
} \