A NFS server uses the Intel Pro/1000 Adapter as ethernet card.
Client machine cannot mount NFS on this server.
When the server uses other ethernet cards(ex. eepro100),
client machine can mount correctly.
I found the size of receive buffer e1000.o(Intel Pro/1000 Driver) used is
larger than the size of socket buffer rpc.mountd used.
the socket buffer size is 2048 byte, but the receive buffer size is 2248
So I fixed nfs-utils source...
in function makesock()
- /* 1024 for rpc & transport overheads */
- sblen = rblen = socksz + 1024;
+ /* 2048 for rpc & transport overheads */
+ sblen = rblen = socksz + 2048;
if (setsockopt(s, SOL_SOCKET, SO_SNDBUF, &sblen, sizeof sblen) < 0 ||
When I changed rpcmisc.c, client machine can mount NFS.
Could you merge this change?
Thanks for the patch. It's been applied.