NFS:client cannot mount with async option from RPI2

Raspberry Pi 2

NFS:client cannot mount with async option from RPI2

Postby steffsson » Thu Jan 19, 2017 6:39 pm

Hey folks,
I am ancountering strange behaviors from my NFS environment. My Raspberry Pi 2 is serving an external USB HDD via NFS to the local network. When accessing the share form my laptop, read speeds are ok (around 4-5 mb/s), but write speeds are too low (1,5 mb/s). I looked around for a while trying to find the problem until I saw, that I cannot mount the NFS share with the option async, it will always be mounted with the option sync – which might be the root of the speed problems.
Network looks like this:

Server: Raspberry Pi 2 running Archlinux

Code: Select all
$ uname -rm
4.4.41-1-ARCH armv7l

$ ifconfig
...
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.5  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::62e3:27ff:fe12:96e8  prefixlen 64  scopeid 0x20<link>
        ether 60:e3:27:12:96:e8  txqueuelen 1000  (Ethernet)
        RX packets 4980473  bytes 846738389 (807.5 MiB)
        RX errors 0  dropped 257  overruns 0  frame 0
        TX packets 3704350  bytes 2403426423 (2.2 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


$ cat etc/exports
...
/srv/nfs4/FRIEDL_BACKUP 192.168.0.0/24(rw,async,no_subtree_check,nohide,no_root_squash,anonuid=1000,anongid=1002)


Client Laptop running Arch:
Code: Select all
$ uname -rm
4.8.13-1-ARCH x86_64

$ ifconfig
...
wlp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.76  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::d0f5:5ce2:7b05:7687  prefixlen 64  scopeid 0x20<link>
        ether 68:14:01:7f:02:f7  txqueuelen 1000  (Ethernet)
        RX packets 42929  bytes 19802364 (18.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 39333  bytes 9146158 (8.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

$ showmount -e raspi
Export list for raspi:
/srv/nfs4/FRIEDL_BACKUP 192.168.0.0/24

$ cat /etc/fstab
...
raspi:/srv/nfs4/FRIEDL_BACKUP    /run/media/stef/FRIEDL_BACKUP   nfs4    rw,async,timeo=28,_netdev,auto,noac,users,noexec, 0 0


However, when listing the currently mounted shares, the NFS mount raspi:/srv/nfs4/FRIEDL_BACKUP ist mointed with sync and not with async:

Code: Select all
$ mount
...
raspi:/srv/nfs4/FRIEDL_BACKUP on /run/media/stef/FRIEDL_BACKUP type nfs (rw,nosuid,nodev,noexec,relatime,sync,vers=3,rsize=131072,wsize=131072,namlen=255,acregmin=0,acregmax=0,acdirmin=0,acdirmax=0,hard,noac,proto=tcp,timeo=28,retrans=2,sec=sys,mountaddr=192.168.0.5,mountvers=3,mountport=20048,mountproto=udp,local_lock=none,addr=192.168.0.5,_netdev)


Why ist the option async not accepted, although set in /etc/exports on the NFS-Server and in /etc/fstab on the Client?
Do you see any other source for the low write speeds from client to server?
Thank you!
steffsson
 
Posts: 1
Joined: Thu Jan 19, 2017 6:33 pm

Return to Broadcom

Who is online

Users browsing this forum: Google [Bot] and 2 guests