Escalated to Bugzilla from IssueTracker
This report is for EL4. For EL5 it's reported in BZ519112.
Description of problem:
statfs on NFS partition always returns 0 regardless of success/fail.
Steps to Reproduce:
1. Start NFS service:
# echo "/test *(rw,no_root_squash)" >> /etc/exports
# service nfs start
2. Setup client:
# mount -t nfs -o soft,timeo=5 server:/test /mnt/nfs
3. Stop NFS service:
# service nfs stop
4. From the client, run the attached test program:
The program returns with 0, which actually should return negative number
according to statfs(2) but returns 0.
Should return negative number.
According to the call trace nfs_statfs is not returning the value properly.
sys_statfs() => return 0
vfs_statfs() => return 0
nfs_statfs() => return 0
nfs3_proc_statfs() => return -5
The patch is already upstream:
Created attachment 358986 [details]
Proposed patch against inode.c of EL4.
Created attachment 358987 [details]
*** Bug 520092 has been marked as a duplicate of this bug. ***
The test kernels on my people.redhat.com page have a patch to fix this (and also to turn the printk in this function into a dprintk). Could you test them and let me know whether they resolve the issue for you?
Created attachment 359795 [details]
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release. Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products. This request is not yet committed for inclusion in an Update
Committed in 89.37.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/
Reproduced in 2.6.9-89.36.EL and verified in 2.6.9-89.37.EL.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.