I think I have found a bug somewhere between XFS and knfsd. If anyone has
seen this or if I am missing something, I would appreciate the help.
On a dual PIII machine, I have XFS installed on a 130G IDE raid array. I
want to set the machine up as a NFS server. Of all the available
journalling filesystems, XFS seems to be the most complete with my set of
criteria. (Backup, works with knfsd, journals, relatively stable.)
The problem occured when I tried to use XFS over NFS to compile something.
Time stamps on files are not getting updated. If I run touch explicitly,
then the time is updated, but if I do something like
cp /dev/null filename
it keeps the old date, despite the fact that the file was truncated to
zero. Scripts that recreate files if they are out of date do not work
correctly because rewritten files do not get the current date. The date
is not even updated to the current date. Also, if I do the following:
cp my_old_file my_other_old_file
The time stamp of my_other_old_file is also not updated. These problems
do not occur if I do the same commands on the local machine. The problems
also do not occur on ext2 filesystems that are exported from the same
machine.
There is one other odd behavior. It seems that in the underlying XFS file
system the time stamps are being updated. It is just not getting back to
the NFS server :(. If I do one of the above commands, log into the NFS
server and look there, the date is correct. After doing that if I look at
the NFS exported version it is correct. So, I could continuously run
find processes to make sure that the files have been recenly re-read, but
I don't think that is a very good solution.
The clients I have used have been 2.4.2,2.4.3-XFS,2.2.* and even HPUX.
They all seem to exhibit the same behavior. An ext2 exported file system
does not have the errors, so I am led to believe that there is some
internal linux interaction between XFS and the kernel nfs server.
Any ideas?
.justin.
------------------------------------------------------------------------
Justin Leonard Tripp jtripp at i(e)^3 org
Configurable Computing Laboratory Research Assistant CB 461 x8-7206
Electrical and Computer Engineering Department Brigham Young University
|