[S] Change in ...nfs-ganesha[next]: nfs4: recall read delegations on UNCHECKED4 truncate OPEN (#945)
by Suhas Athani (GerritHub)
Suhas Athani has uploaded this change for review. ( https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240541?usp=email )
Change subject: nfs4: recall read delegations on UNCHECKED4 truncate OPEN (#945)
......................................................................
nfs4: recall read delegations on UNCHECKED4 truncate OPEN (#945)
This is regarding github issue -
https://github.com/nfs-ganesha/nfs-ganesha/issues/945
- Treat `FSAL_O_TRUNC` (UNCHECKED4 OPEN with size 0 on
an existing file) as a delegation conflict in `open4_ex`,
per RFC 8881 Section 18.16.4.
- Pass a combined `open_conflicts_with_deleg` flag to
`state_deleg_conflict_impl()` instead of only checking
`OPEN4_SHARE_ACCESS_WRITE`.
Problem:
For `OPEN_DELEGATE_READ`, RFC 8881 requires recall when another
client issues an OPEN that truncates an existing file via
`OPEN4_CREATE` + `UNCHECKED4` with size 0, even if `share_access`
is read-only. Ganesha only checked write access, so opens such as
`O_RDONLY | O_CREAT | O_TRUNC` could proceed without recalling an
outstanding read delegation.
Solution:
In `open4_ex`, set `open_conflicts_with_deleg` when either write
access is requested or `FSAL_O_TRUNC` is set, and use it at both
delegation conflict check sites (initial OPEN and `fsal_reopen2`).
Change-Id: I3ae114c42cdedb46a0c967bd1cb25896732a8480
Signed-off-by: Suhas Athani <Suhas.Athani(a)ibm.com>
---
M src/Protocols/NFS/nfs4_op_open.c
1 file changed, 15 insertions(+), 6 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/41/1240541/1
--
To view, visit https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240541?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: I3ae114c42cdedb46a0c967bd1cb25896732a8480
Gerrit-Change-Number: 1240541
Gerrit-PatchSet: 1
Gerrit-Owner: Suhas Athani <Suhas.Athani(a)ibm.com>
1 month, 3 weeks
[S] Change in ...nfs-ganesha[next]: SAL: split exp_state_list onto its own rwlock to cut PUTFH/OPEN conte...
by Xueqian Hu (GerritHub)
Xueqian Hu has uploaded this change for review. ( https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240515?usp=email )
Change subject: SAL: split exp_state_list onto its own rwlock to cut PUTFH/OPEN contention
......................................................................
SAL: split exp_state_list onto its own rwlock to cut PUTFH/OPEN contention
exp_lock guards both the read-hot perms/client check on every PUTFH
(export_check_access) and the write-hot exp_state_list churn on every
OPEN/CLOSE (state_add/state_del), so the two convoy on a busy export
despite touching disjoint data. Give exp_state_list its own rwlock
(exp_state_lock); exp_lock still protects perms/clients and the NLM
lists. The two sets were already disjoint so no atomicity is lost, and
exp_state_lock is a leaf lock (only state_mutex nests under it).
Change-Id: I26c68ce8039f1e84d2a69560f746900212a62d1b
Signed-off-by: xueqian.hu <xh140312(a)outlook.com>
---
M src/SAL/nfs4_state.c
M src/include/export_mgr.h
M src/support/export_mgr.c
3 files changed, 17 insertions(+), 13 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/15/1240515/1
--
To view, visit https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240515?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: I26c68ce8039f1e84d2a69560f746900212a62d1b
Gerrit-Change-Number: 1240515
Gerrit-PatchSet: 1
Gerrit-Owner: Xueqian Hu <xh140312(a)outlook.com>
1 month, 3 weeks
[S] Change in ...nfs-ganesha[next]: MDCACHE: skip parent content_lock on create when dirent caching is off
by Xueqian Hu (GerritHub)
Xueqian Hu has uploaded this change for review. ( https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240514?usp=email )
Change subject: MDCACHE: skip parent content_lock on create when dirent caching is off
......................................................................
MDCACHE: skip parent content_lock on create when dirent caching is off
On the create paths (open2, mkdir, mknod, symlink) the parent's
content_lock only guards the dirent add, which is already gated on
get_readdir_mode() == FSAL_RDDIR_CHUNK_ALWAYS. Take the lock only in
that mode - mirroring mdcache_link() - so concurrent creates into the
same directory no longer serialize when dirent caching is off.
Change-Id: Ifc8bd6127c9e377b7a04c59194cffe00164a6ea7
Signed-off-by: xueqian.hu <xh140312(a)outlook.com>
---
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_file.c
M src/FSAL/Stackable_FSALs/FSAL_MDCACHE/mdcache_handle.c
2 files changed, 28 insertions(+), 8 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/14/1240514/1
--
To view, visit https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240514?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: Ifc8bd6127c9e377b7a04c59194cffe00164a6ea7
Gerrit-Change-Number: 1240514
Gerrit-PatchSet: 1
Gerrit-Owner: Xueqian Hu <xh140312(a)outlook.com>
1 month, 3 weeks
Announce Push of V11.0
by Frank Filz
Branch next
Tag:V11.0
Merge Highlights
Features:
* Integrated NSM
Other Patches
* READDIR: handle error conditions and fslocations better
* Remove the last vestiges of CacheInode
* Fix xattr support to FSAL-GPFS
* Clear buffers for fs-locations information.
* RDMA/TCP [mount]
* additional selinux policy
Signed-off-by: Frank S. Filz <ffilzlnx(a)mindspring.com>
Contents:
7e9b76563 Frank S. Filz V11.0
f3c2c5cac Kaleb S. KEITHLEY additional selinux policy
9d9fc926d Deeraj.Patil RDMA/TCP [mount]
46c0dd870 marc eshel Clear buffers for fs-locations information.
8cdef74cb marc eshel Fix xattr support to FSAL-GPFS
5ad1834d7 Frank S. Filz Remove the last vestiges of CacheInode
2a2661ec7 Frank S. Filz READDIR: handle error conditions and fslocations
better
f96ac4f56 Frank S. Filz Implement Internal NSM
26d52a8ab Frank S. Filz RPC Callback - do not destroy AUTH_NONE
47c47644e Frank S. Filz RECOVERY: Prepare recovery database to hold NLM/NSM
information also
38a97ffde Frank S. Filz RECOVERY: refactor process recovery entry code into
separate function
cf2b82ac8 Frank S. Filz RECOVERY: refactor to no longer pass add_clid_entry
and add_rfh_entry
be966ad01 Moritz Tanner recovery: add RecoverySkipIp to omit IP from tag
155a841cc Frank S. Filz RECOVERY: revamp to generate clid name in one
function
146feb90c Frank S. Filz STATD: Add basic configuration for absorbing
rpc.statd
5300d8aa1 Frank S. Filz Rewrite sm_notify.c to use CLNT_CALL_WAIT instead of
sendto
1 month, 3 weeks
[L] Change in ...nfs-ganesha[next]: Grpc: Add Export, FileSystem and ShowIdMapper management APIs
by Name of user not set (GerritHub)
Vidya.Thumukunta(a)ibm.com has uploaded this change for review. ( https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240195?usp=email )
Change subject: Grpc: Add Export, FileSystem and ShowIdMapper management APIs
......................................................................
Grpc: Add Export, FileSystem and ShowIdMapper management APIs
Implement gRPC equivalents for the existing DBus management APIs.
This change adds support for:
- ExportService
- AddExport
- DisplayExport
- RemoveExport
- ShowExports
- FileSystemService
- ShowPosixFileSystems
- ShowIdMapperService
- ShowIdMapper
Change-Id: I872d55d7111880912fe8000afe58736e460d1a22
Signed-off-by: VidyaThumukunta <vidya.thumukunta(a)ibm.com>
---
M src/FSAL/localfs.c
M src/grpc_server/GrpcServer.cc
M src/grpc_server/GrpcServer.h
M src/grpc_server/nfsService.h
M src/grpc_server/nfsServiceClient.cc
M src/grpc_server/nfsServiceServer.cc
M src/grpc_server/proto/nfsService.proto
M src/idmapper/idmapper_cache.c
M src/include/FSAL/fsal_localfs.h
M src/include/export_mgr.h
M src/include/idmapper.h
M src/include/nfs_exports.h
M src/support/export_mgr.c
13 files changed, 674 insertions(+), 30 deletions(-)
git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/95/1240195/1
--
To view, visit https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/1240195?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: I872d55d7111880912fe8000afe58736e460d1a22
Gerrit-Change-Number: 1240195
Gerrit-PatchSet: 1
Gerrit-Owner: Vidya.Thumukunta(a)ibm.com
1 month, 3 weeks