"rpc mount export: RPC: Can't decode result" when export list
is to long
Rick Macklem
rmacklem at uoguelph.ca
Sat Jan 29 20:17:27 UTC 2011
Oops, I should have looked at the sources...
In mountd.c it limits the RPC size to 8800 for UDP and 9000
for TCP. (UDPMSGSIZE and RPC_MAXDATASIZE respectively)
You could increase this by changing:
svc_dg_create(...,0, 0);
else
svc_vc_create(...,RPC_MAXDATASIZE, RPC_MAXDATASIZE);
to
svc_dg_create(..., 63 * 1024, 63 * 1024);
else
svc_vc_create(..., 200 * 1024, 200 * 1024);
in mountd.c
But...
The Linux client might set a smaller limit in its client
side RPC library anyhow.
Again, I am surprised that the Linux automount checks the
exports reported via mountd, but???
Did you check to see if the mounts work manually?
(That would confirm if they are exported ok.)
rick
ps: UDP datagrams are limited to 64K, but since I can't remember
if that size includes the UDP header, I went with 63K. For
TCP it is limited to 256K in the RPC library and to a somewhat
lower value with the default kern.ipc.maxsockbuf. (Basically
what the kernel sets sb_max_adj to.)
More information about the freebsd-fs
mailing list