Moritz Tanner has uploaded this change for review. (
https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1239050?usp=email )
Change subject: recovery: add RecoverySkipIp to omit IP from tag
......................................................................
recovery: add RecoverySkipIp to omit IP from tag
In some HA configurations a client may be seen by the server under a
different source IP after a failover (e.g. due to NAT or overlay
networking). This causes grace-period reclaim to fail because the
stored recovery tag embeds the client's source IP and no longer
matches.
Add an NFSv4 config boolean RecoverySkipIp (default false) that makes
nfs4_create_clid_name() build the tag from only the opaque client
owner, without the address prefix. The tag changes from
"<addr>-(len:opaque)" to "(len:opaque)". Both add and check
build the
tag the same way, so check_clid() needs no change. Existing records
written with the address prefix will not match after enabling the
option; clients re-establish fresh state on the first restart.
Change-Id: Ic33a23f4f4bb3d3a1dd82e1669ca47366290b213
Signed-off-by: Moritz Tanner <moritz.tanner(a)linbit.com>
---
M src/SAL/nfs4_recovery.c
M src/include/gsh_config.h
M src/support/nfs_read_conf.c
M src/test/CMakeLists.txt
A src/test/test_recovery_tag.c
5 files changed, 118 insertions(+), 5 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/50/1239050/1
--
To view, visit
https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1239050?usp=email
To unsubscribe, or for help writing mail filters, visit
https://review.gerrithub.io/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: Ic33a23f4f4bb3d3a1dd82e1669ca47366290b213
Gerrit-Change-Number: 1239050
Gerrit-PatchSet: 1
Gerrit-Owner: Moritz Tanner <moritz.tanner(a)linbit.com>