Hi,

 

I saw a ganesha core for krb5p mounts. This happened when ganesha failed over/restarted and the client was reconnecting. The server received some RPCSEC_GSS_DATA requests which will fail because the GSS context is not available. But one of such request resulted in following core,

 

#0 0x00007fbb1ef8903c in rbtree_x_cached_lookup (xt=0x7fbb1f1a0d48 <authgss_hash_st+40>, t=0x7fbaf0001680, nk=0x7fbb14468e80, hk=3355459200)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/ntirpc/misc/rbtree_x.h:65
#1 0x00007fbb1ef897e7 in authgss_ctx_hash_get (gc=0x7fbad80012a8)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/authgss_hash.c:159
#2 0x00007fbb1ef8c368 in _svcauth_gss (req=0x7fbad8000d40, no_dispatch=0x7fbb1446917f)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_auth_gss.c:450
#3 0x00007fbb1ef78fee in svc_auth_authenticate (req=0x7fbad8000d40, no_dispatch=0x7fbb1446917f)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_auth.c:98
#4 0x0000000000456116 in nfs_rpc_process_request (reqdata=0x7fbad8000d40)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/MainNFSD/nfs_worker_thread.c:724
#5 0x00000000004588c9 in nfs_rpc_valid_NFS (req=0x7fbad8000d40)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/MainNFSD/nfs_worker_thread.c:1538
#6 0x00007fbb1ef81752 in svc_vc_decode (req=0x7fbad8000d40)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_vc.c:827
#7 0x000000000044b333 in nfs_rpc_decode_request (xprt=0x7fbb08000a90, xdrs=0x7fbad8000a90)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/MainNFSD/nfs_rpc_dispatcher_thread.c:1345
#8 0x00007fbb1ef81663 in svc_vc_recv (xprt=0x7fbb08000a90)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_vc.c:800
#9 0x00007fbb1ef7ddb1 in svc_rqst_xprt_task (wpe=0x7fbb08000ca8)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_rqst.c:769
#10 0x00007fbb1ef7e20e in svc_rqst_epoll_events (sr_rec=0xcf09f0, n_events=1)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_rqst.c:941
#11 0x00007fbb1ef7e4a3 in svc_rqst_epoll_loop (sr_rec=0xcf09f0)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_rqst.c:1014
#12 0x00007fbb1ef7e556 in svc_rqst_run_task (wpe=0xcf09f0)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/svc_rqst.c:1050
#13 0x00007fbb1ef86ef6 in work_pool_thread (arg=0x7fbae80008c0)
    at /build/mts/release/bora-16305188/cayman_nfs-ganesha/nfs-ganesha/src/src/libntirpc/src/work_pool.c:181
#14 0x00007fbb1db333d4 in start_thread (arg=0x7fbb1446a700) at pthread_create.c:334
#15 0x00007fbb1d452ebd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

 

 

I am using ntirpc 1.7.2. I see that there are multiple changes around GSS authentication after 1.7.2 as follows,

 

cf01e379 _svcauth_gss - Clean up gss_data handling

c99acef0 Do not use macro "svcauth_gss_return"

e42d079a Fix memory leak for RPCSEC_GSS

 

And probably some more. Any of these changes were related to above core pattern?

 

Thanks,

Sriram