Red Hat Bugzilla – Bug 508174
RHL 9 (i.e., old) nfs client can no longer do seeks for nfs mounted files on server running kernel-PAE-184.108.40.206-191.fc11.i686
Last modified: 2009-07-22 17:58:30 EDT
Description of problem:
Red Hat Linux 9 nfs client can no longer do seeks for nfs mounted files on server running kernel-PAE-220.127.116.11-191.fc11.i686
Problem occurs with update kernel:
Problem does not occur with original F11 kernel:
Presumably this problem is still relevant, even if one of the systems involved is very old, as one imagines that a valid nfs call is not being properly handled by the new kernel.
I have a Fedora 11 system (with full updates) acting as an NFS server. I have a separate system running Red Hat Linux 9 (for various backwards compatibility building and testing reasons) that is an nfs client of the aforementioned server (using autofs for auto-mounting).
On the nfs client, *with current working directory set to a directory under the nfs mount*, an attempted compilation results in something like:
$ gcc -c hw.c
hw.o: Input/output error
/usr/tmp/cckOXVqu.s: Assembler messages:
/usr/tmp/cckOXVqu.s:25: FATAL: Can't write hw.o: Illegal seek
Sometimes it complains about "Illegal seek" and sometimes about "Input/Output error", although I believe the problem is wholly seek-related.
The following command reveals that the program actually issuing the diagnostic is "as":
$ gcc -c -v -save-temps hw.c
as -V -Qy -o hw.o hw.s
GNU assembler version 18.104.22.168.18 (i386-redhat-linux) using BFD version 22.214.171.124.18 20030206
hw.o: Input/output error
hw.s: Assembler messages:
hw.s:25: FATAL: Can't write hw.o: Input/output error
Presumably, the assembler attempts to seek within the output object file and fails.
I have worked around this problem for my own sake using a script to wrap the "as" command, substituting a tmp file on a local disk for the original output file on the nfs filesystem and then mv'ing the local file into the desired output file after assembly completes. This workaround works reliably, again suggesting that the problem is related to the attempted seek on the nfs file.
Always fails under kernel-PAE-126.96.36.199-191.fc11.i686 .
Always works under the previous kernel:
Steps to Reproduce:
1. Fedora 11 server running kernel-PAE-188.8.131.52-191.fc11.i686
2. RHL 9 client, autofs for auto-mount of nfs file system from server.
3. Set current working directory to be on the nfs filesystem.
3. Attempt compilation of a .c file using gcc
This problem is also seen for the output file of ld (not just "as").
(By the way, for what it's worth, the (client) RHL 9 kernel is 2.4.20-43.9.legacy.)
This problem goes away from Fedora kernel-PAE-184.108.40.206-191.fc11.i686 when that kernel is rebuilt without patch linux-2.6-nfsd-report-short-writes.patch .
Perhaps the patch is OK and the old kernel on the client is not handling things properly. I'll ask about this on the linux-nfs list.
J. Bruce Fields on firstname.lastname@example.org diagnosed this problem and suggested that I try patch
"nfsd: fix hung up of nfs client while sync write data to nfs server"
This patch fixes a problem with the short write patch (linux-2.6-nfsd-report-short-writes.patch).
Both of these patches are upstream in 2.26.30. Only the short write patch is in Fedora 11 kernel-220.127.116.11-191.fc11.i686.
Suggestion: Future Fedora kernels based on 2.6.29 should also include the second patch "nfsd: fix hung".
Once that is done (or once Fedora 11 kernels are based on 2.6.30) I would consider this bug closable.
Fixed in 18.104.22.168-207
*** Bug 508873 has been marked as a duplicate of this bug. ***
Successfully tested with 22.214.171.124-209.rc1.fc11.i686.PAE from
Marking this bug as closed.
My apologies and sorry to cause a ping all the listeners of this bug again.
I see that I, as the bug submitter, should not have marked this bug as CLOSED (it should still be MODIFIED state) until an update was released and further that NEXTRELEASE does not mean what I thought it did.
Accordingly, since I'm not permitted to reclassify this bug as other than CLOSED or ASSIGNED, I guess the best thing for me to do is to change it back to ASSIGNED.
Again, sorry about that.
kernel-126.96.36.199-213.fc11 has been submitted as an update for Fedora 11.
kernel-188.8.131.52-213.fc11 has been pushed to the Fedora 11 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
su -c 'yum --enablerepo=updates-testing update kernel'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-7617
kernel-184.108.40.206-213.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.