important NFS client patch for FreeBSD8.n

Chris H chris# at
Tue Jan 11 07:40:41 UTC 2011

Greetings, and thank you for the "heads up".
On Mon, January 10, 2011 2:22 pm, Rick Macklem wrote:
> I just commited a patch (r217242) to head. Anyone who is using client
> side NFS on FreeBSD8.n should apply this patch. It is also available at:
> It fixes a problem where the kernel rpc assumes that 4 bytes of data
> exists in the first mbuf without checking. If the data straddles multiple mbufs,
> it uses garbage and then a typical case will wedge for a minute or so until it
> times out and establishes a new TCP connection. It also replaces m_pullup() with
> m_copydata(), since m_pullup() can fail for rare cases when there is data
> available. (m_pullup() uses MGET(, M_DONTWAIT,) which can fail when mbuf
> allocation is constrainted, for example.)
> Thanks to john.gemignani at for spotting this problem, rick

I just fired a message off to @amd64 && @net because I am seeing messages like:

nfe0: tx v2 error 0x6204<UNDERFLOW>

on a recent 8.1/amd64 install which is connected to an 8.0/i386 via NFS.
They both run NFS client && server, and they both utilize mount points
on each other. They are only 2 of several interconnected servers. The
others are all 7x/i386. But I only see these messages on the 8.1/amd64,
and only when connected to, and utilizing mounts on the 8.0/i386, and even
then, only when the data exceeds ~1.5Mb.
I guess I'm asking if the messages I'm receiving are related to the
corrections your patch provides. Or should I keep looking for the answer
for the messages I am seeing.

Thank you for all your time and consideration.


> _______________________________________________
> freebsd-stable at mailing list
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at"


More information about the freebsd-stable mailing list