Nikhil Adhau has uploaded this change for review.

View Change

Fix race condition in clientid expiration during compound operations

Add reference counting for data->preserved_clientid to prevent the
clientid structure from being freed while still in use during NFSv4
compound operations.

The crash occurred when a clientid expired while a compound
operation was still using it, causing update_lease_simple() to
acquire a mutex on a freed clientid structure.

Change-Id: I85a17cfe87bc3bd8dc325191da085a17fc18389c
Signed-off-by: Nikhil Adhau <nikhiladhau999@gmail.com>
---
M src/Protocols/NFS/nfs4_Compound.c
M src/Protocols/NFS/nfs4_op_bind_conn.c
M src/Protocols/NFS/nfs4_op_sequence.c
M src/SAL/nfs4_state_id.c
4 files changed, 26 insertions(+), 0 deletions(-)

git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/74/1226374/1

To view, visit change 1226374. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: I85a17cfe87bc3bd8dc325191da085a17fc18389c
Gerrit-Change-Number: 1226374
Gerrit-PatchSet: 1
Gerrit-Owner: Nikhil Adhau <nikhiladhau999@gmail.com>