patch for 2.1.66 knfsd

Bill Hawes (whawes@star.net)
Wed, 26 Nov 1997 10:57:44 -0500


This is a multi-part message in MIME format.
--------------83BC6889DF43A08E5966B7BC
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

I've made some minor improvements to knfsd and have attached a patch
against 2.1.66.

Summary of Changes:
(1) Added FH cache-hit statistics to /proc/net/rpc/nfsd
There are 5 numbers appended to the reply-cache line (rc) giving cache
hits, dentry validations, patched-up validations, look-ups, and failures
(stale filehandles), respectively. (The first three numbers are the rc
cache stats.)

(2) Added code to flush any cached dentries when un-exporting a fs. This
will prevent spurious "fs busy" messages at umount time, as long as the
exports are revoked first.

(3) Added a diagnostic message to indicate a non-root fs with a
previously exported parent. This is one of the causes for non-intuitive
failures to mount a fs.

Misc general cleanup -- suppressed unnecesary error messages, fixed a
curious call to kmalloc() with swapped arguments (that appeared to
work??), etc.

Please continue testing and let me know of any anomalies. I'd especially
like some feedback on the cache-hit statistics under realistic
multi-user loads. On a lightly-loaded system the short-term cache hits
are 95+%, and I have not yet seen a stale FH message ...

Regards,
Bill
--------------83BC6889DF43A08E5966B7BC
Content-Type: application/x-gzip; name="nfsd_66-patch.gz"
Content-Transfer-Encoding: base64
Content-Disposition: inline; filename="nfsd_66-patch.gz"

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
smFOj6FfjGpf3a7yf75vDo/lQQAA
--------------83BC6889DF43A08E5966B7BC--