[Bugs] [Bug 1667407] New: [Ganesha] Observed ganesha crash after setting 'ganesha.enable' to 'on' on volume which is not started

bugzilla at redhat.com bugzilla at redhat.com
Fri Jan 18 11:48:51 UTC 2019


https://bugzilla.redhat.com/show_bug.cgi?id=1667407

            Bug ID: 1667407
           Summary: [Ganesha] Observed ganesha crash after setting
                    'ganesha.enable' to 'on' on volume which is not
                    started
           Product: GlusterFS
           Version: mainline
            Status: ASSIGNED
         Component: core
          Keywords: Triaged
          Severity: medium
          Assignee: jthottan at redhat.com
          Reporter: jthottan at redhat.com
                CC: bugs at gluster.org
        Depends On: 1658050
  Target Milestone: ---
    Classification: Community



+++ This bug was initially created as a clone of Bug #1658050 +++

Description of problem:
-----------------------
Ganesha crashed after setting 'ganesha.enable' to 'on' on volume which is not
started. Crash observed on all nodes in the cluster.

=============================================================================
Version-Release number of selected component (if applicable):
-------------------------------------------------------------
# rpm -qa | grep ganesha
glusterfs-ganesha-3.12.2-29.el7rhgs.x86_64
nfs-ganesha-2.5.5-10.el7rhgs.x86_64
nfs-ganesha-gluster-2.5.5-10.el7rhgs.x86_64

==============================================================================
How reproducible:
-----------------
2/2
=============================================================================

Steps to Reproduce:
------------------
1. Create a 6 node ganesha cluster.
2. Create a volume 'testvol'. Do not start the volume.
3. Set volume option 'ganesha.enable' to 'on' in 'testvol'.
4. Observe ganesha crash after sometime.

============================================================================
Actual results:
---------------
nfs-ganesha crashed on all nodes.

=============================================================================
Expected results:
-----------------
nfs-ganesha should not get crashed.

=============================================================================
Additional info:

The initialization of glusterfs client happens twice for nfs-ganesha.
One via mgmt_rpc_notify() (the normal path for gfapi) and other with
mgmt_cbk_spec() (callback send from glusterd at the end of volume set command)

So two io threads will be created.
If the volume is not started, the glfs_fini is destroy only one of the threads,
leaving the context of another thread invalid and leads to crash.
If the volume is in started state, post init
init_export_root->mdcache_lookup_path->lookup->..->priv_glfs_active_subvol()
finds out there is oldsubvol
and sends notify on oldsubvol with PARENT_DOWN event so that the iot thread
created first will be destroyed.

If the volume is not started the init will fail, so no lookup path will be send
post t


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1658050
[Bug 1658050] [Ganesha] Observed ganesha crash after setting 'ganesha.enable'
to 'on' on volume which is not started
-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Bugs mailing list