pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/48385: gmake 4.0 loops on tmpfs
The following reply was made to PR pkg/48385; it has been noted by GNATS.
From: David Holland <dholland-pbugs%netbsd.org@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: pkg/48385: gmake 4.0 loops on tmpfs
Date: Sun, 17 Nov 2013 21:17:06 +0000
On Sun, Nov 17, 2013 at 05:00:01PM +0000, David Holland wrote:
> On Sun, Nov 17, 2013 at 04:55:00PM +0000, dholland%NetBSD.org@localhost
wrote:
> > rerunning the recipe for objdir/depend.mk. It does not happen with
> > gmake 3.82.
>
> Upstream report:
>
> http://savannah.gnu.org/bugs/index.php?40610
So it looks like gmake going into an infinite loop is a symptom, and
the trigger is that
echo stuff > objdir/depend.mk
when objdir/depend.mk doesn't yet exist leaves objdir newer than
depend.mk, typically by about 1 ms. Then the make rule
objdir/depend.mk: objdir
causes gmake to rebuild depend.mk again, and of course it never
stops. I think the reason this doesn't happen in gmake 3.82 is that
gmake 3.82 doesn't read the nanoseconds field of the mtime.
I think this qualifies as a tmpfs bug; the open() that creates
depend.mk and therefore sets the directory timestamp necessarily comes
before the write() that puts stuff into the file and sets the file
timestamp. The timestamps ought to reflect this ordering, and don't.
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index