クライアントシステムで "umount" に続けて "showmount -a" が実行されると NFSv3 サーバーで rpc.mountd segfault が発生します
Issue
- showmount に失敗し、以下のエラーが表示される場合があります。
rpc mount dump:RPC:Unable to receive; errno = Connection reset by peer
- showmount に失敗すると rpc.mountd segfaults が発生し、以下のようなメッセージが表示されます。'segfault' は 'sp' に近いアドレスを示しますが、これは、スタックが超過したためにクラッシュが発生したことを示しています。
Aug 7 19:27:22 rhel61 kernel: rpc.mountd[27257]: segfault at 7fff1ab57ff8 ip 00007f7776b596d1 sp 00007fff1ab58000 error 6 in libc-2.12.so[7f7776ad7000+187000]
- messages ファイルは、以下のように、rpc.mountd segfault の直前にある 'unmount' 要求を示している可能性があります。
Oct 31 21:01:07 rhel6.1 rpc.mountd[9193]: authenticated unmount request from 1.1.1.2:661 for /export/somedir (/foo/bar) Oct 31 21:01:10 rhel6.1 kernel: rpc.mountd[9193] general protection ip:7ff86d60154f sp:7fff89755f78 error:0 in libc-2.12.so[7ff86d4dc000+186000]
- クライアントシステムで "umount" に続けて "showmount -a" が実行されると NFSv3 サーバーで rpc.mountd segfault が発生します。
- 以下の手順を行うと、rpc.mountd segfault が再現します。
1. テストシステムで NFS エクスポートを作成します。
2. リモートシステムで、以下のように NFS エクスポートをマウントします。
mount -t nfs <ip of test system>:/srv/redhat-dvd -o nfsvers=3,nolock /mnt/nfs.
3. リモートシステムで、`showmount -a <ip of test system>` を実行します。
4. リモートシステムで、`umount /mnt/nfs` を実行します。
5. リモートシステムで、`showmount -a <ip of test system>` を実行します。
6. Segfault が発生します。
Environment
- Red Hat Enterprise Linux 6.1
- nfs-utils-1.2.3-7.el6.x86_64.rpm
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.