Description of problem: I did this experiment, where one server exported filesystem via nfs(ro,sync,no_root_squash), and the second mounted it with mount -t nfs -o nfsvers=3 beta50:/mnt/mnt tmp resulted mount is server:/mnt/mnt /mnt/tmp nfs rw,v3,rsize=32768,wsize=32768,hard,tcp,lock,addr=server 0 0 Next, I wrote very simple client, which opens nfs file in O_APPEND|O_SYNC mode, and writes 1 byte in a infinite loop. While the client application runs I did following tests on server mount -o remount,ro /mnt/mnt the server filesystem remounted RO fine, the file written by client stopped growing, hence client haven't got any error to write() syscalls? It was writing forever. I verified it with strace as well. Next, instead of remounting it RO on the server, I changed the /etc/export line to RO mode and restarted nfs service. The result was similar, file stopped growing, the client stalled for a while, then again, it was not getting any errors to the write() syscalls. Is it bug, or nfs "mis" feature? Version-Release number of selected component (if applicable): kernel 2.6.9-42.0.10.ELsmp nfs-utils-1.0.6-70.EL4 Actual results: no write() error Expected results: error "RO filesystem" so client will not be lied, that the operation succeeded.
Would you mind trying your "test" in a kernel newer than 2.6.9-56, please?
Well, this bug applies to RHEL4, and since I'm running RHEL4, i'd rather leave thay testing to someone who's actually running rhel5. BTW, there's a mistake in my first posting < I did this experiment, where one server exported filesystem via < nfs(ro,sync,no_root_squash), and the second mounted it with > I did this experiment, where one server exported filesystem via > nfs(rw,sync,no_root_squash), and the second mounted it with
2.6.9-56 or newer kernels _are_ RHEL-4 kernels. RHEL-5 is based on 2.6.18. Please test using a RHEL-4 kernel at least as new as 2.6.9-56.
I really cannot. I was bound to rhel4.4/32bit, now I'm running rhel5.1/64bit
Do you see this problem on your current system?
Haven't tested. It's not like I experienced some problems cause this bug - It just showed during tests. I suppose You guys should have two machines to perform the test on various environments.