Subject: Re: that VM/fs cache coherency problem
To: None <tech-kern@NetBSD.ORG>
From: der Mouse <mouse@Collatz.McRCIM.McGill.EDU>
List: tech-kern
Date: 08/01/1995 07:04:03
>> tail -f on logfiles is coredumping.
>> (The problem seems to be related to tail's tendency to read the file
>> via mmap().)

> Is this over NFS?

No; all filesystems involved are local UFS/FFS disk.

> The way I usually build the world is to nohup and background the
> make, then tail -f the log file sometimes from multiple terminals at
> once...

Since I sent that message I have been experimenting, trying to
deliberately reproduce the problem.  I have been unable to reproduce
exactly that problem, but I do have something very similar.

# cd /usr/src
# ( make && make depend ) >& somelogfile &
# tail -f somelogfile

then, from another window while the tail -f is running,

# vi somelogfile

vi sees the file _size_ correctly, but the _contents_ are as of the
time tail -f started, with NULs replacing everything past that.  (This
is entirely on UFS, er, FFS filesystems.)

This is on NetBSD/sun3.  I have not succeeded in making it happen on
NetBSD/sparc, though I have not tried very hard yet.  But almost all of
the VM code is non-machine-specific, so I'm not sure why this should
make any difference.

I am now thinking about turning on vpagerdebug and provoking trouble,
to see what's actually going wrong....

					der Mouse