On 03/25/2015 05:37 AM, Sander Smeenk wrote: > I'm running a server that has 1500+ mounted local filesystems. > All of these local filesystems are exported through NFS by this server. > > When an NFS-client tries to access one of these exported filesystems, > for example doing a simple 'ls' in a mounted NFS, rpc.mountd on the > server takes 100% CPU and starts to spin over reading /etc/mtab which is > linked to /proc/mounts and totals to about 200KB in size. The client > stalls all the while rpc.mountd is busy reading /etc/mtab for every > filesystem mounted, and then some more. > > This entire process of reading /etc/mtab 17028 times takes a lot of time > during which the client stalls, but in the end 'it just works fine'. > It just takes ages when you try to tab-complete on a client. Taking a quick look... it appears the only way rpc.mountd will read /etc/mtab is if the 'crossmnt' export flag is set. Is this the case? > > What would be needed to debug and optimise this? Maybe reorder you exports so the 'hot' file systems are on the top of the list... > Could someone point me to the code that is involved in doing this? utils/mountd/cache.c:nfsd_fh():path = next_mnt(&mnt, exp->m_export.e_path); steved. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html