Description of problem: ======================= while mounting volume using nfs it was hung and found nfs server process was crashed and core was generated. After that killed some brick process and during start force of that volume found crash again nfs log snippet:- [2014-08-09 03:25:04.297623] E [nfs.c:341:nfs_init_versions] 0-nfs: Program NLM4 registration failed [2014-08-09 03:25:04.297642] E [nfs.c:1327:init] 0-nfs: Failed to initialize protocols [2014-08-09 03:25:04.297654] E [xlator.c:423:xlator_init] 0-nfs-server: Initialization of volume 'nfs-server' failed, review your volfile again [2014-08-09 03:25:04.297684] E [graph.c:292:glusterfs_graph_init] 0-nfs-server: initializing translator failed [2014-08-09 03:25:04.297698] E [graph.c:479:glusterfs_graph_activate] 0-graph: init failed pending frames: frame : type(0) op(0) patchset: git://git.gluster.com/glusterfs.git signal received: 11 NLM (of NFS) failed to register with portmapper, so init() routine of NFS xlator returns (-1) to xlator_init(). Call flow: glusterfsd (NFS process) glusterfs_process_volfp() => glusterfs_graph_activate() => glusterfs_graph_init() => xlator_init () => NFS init() routine But somehow cleanup_and_exit() goes through some race which causes the SEGV. But it clearly says the crash is in the exit code path i.e. NLM failed to register with portmapper and NFS process was about to exit but segfaulted. The root cause: The NLM was not able to register with portmapper which prohibited NFS to start.
REVIEW: http://review.gluster.org/9988 (nfs: do not fail to start when optional RPC-programs fail to register) posted (#1) for review on master by Niels de Vos (ndevos)
REVIEW: http://review.gluster.org/9988 (nfs: do not fail to start when optional RPC-programs fail to register) posted (#2) for review on master by Niels de Vos (ndevos)
COMMIT: http://review.gluster.org/9988 committed in master by Niels de Vos (ndevos) ------ commit 01d96d97f1bae4f83321285c701b93f2a668ad25 Author: Niels de Vos <ndevos> Date: Mon Mar 2 11:14:08 2015 +0100 nfs: do not fail to start when optional RPC-programs fail to register Some RPC-programs are not strictly required for the NFS-server. When these optional protocols fail to get registered at the portmapper, there is no need to fail the starting of the NFS-server. Required RPC-programs: - NFS - MNT Optional RPC-programs: - NLM - ACL Change-Id: Ife8ad871cff47554e3f42eb457c76431d0181964 BUG: 1205579 Tested-by: Brad Hubbard <bhubbard> Signed-off-by: Niels de Vos <ndevos> Reviewed-on: http://review.gluster.org/9988 Tested-by: Gluster Build System <jenkins.com> Reviewed-by: Kaleb KEITHLEY <kkeithle> Reviewed-by: jiffin tony Thottan <jthottan> Reviewed-by: soumya k <skoduri>
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.7.0, please open a new bug report. glusterfs-3.7.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution. [1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939 [2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user