Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 Jan 2011 15:17:25 -0500 (EST)
From:      Rick Macklem <rmacklem@uoguelph.ca>
To:        =?utf-8?Q?Micka=C3=ABl_Can=C3=A9vet?= <canevet@embl.fr>
Cc:        freebsd-fs@freebsd.org
Subject:   Re: "rpc mount export: RPC: Can't decode result" when export list is to long
Message-ID:  <715248679.1071311.1296332245920.JavaMail.root@erie.cs.uoguelph.ca>

next in thread | raw e-mail | index | archive | help
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.)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?715248679.1071311.1296332245920.JavaMail.root>