Whamcloud - gitweb
LU-13754 gss: open sptlrpc init channel in R+W mode 97/39297/3
authorSebastien Buisson <sbuisson@ddn.com>
Tue, 7 Jul 2020 14:59:08 +0000 (23:59 +0900)
committerOleg Drokin <green@whamcloud.com>
Fri, 17 Jul 2020 19:29:13 +0000 (19:29 +0000)
Linux 5.3 changed struct cache_detail readers to writers.
As this mechanism is used by GSS authentication in Lustre via SunRPC,
we need to make sure lsvcgssd daemon does open
/proc/net/rpc/auth.sptlrpc.init/channel in R+W mode.

It also affects CentOS/RHEL 7.8, as the kernel commit was ported to
these distros.

Test-Parameters: trivial
Test-Parameters: env=SHARED_KEY=true,SANITY_EXCEPT="56w 405" mdscount=2 mdtcount=4 osscount=2 ostcount=8 testlist=sanity,recovery-small,sanity-sec
Signed-off-by: Sebastien Buisson <sbuisson@ddn.com>
Change-Id: If88802d4f2bc3168dda4f79fe57f2f44ac7ef39e
Reviewed-on: https://review.whamcloud.com/39297
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/utils/gss/svcgssd_main_loop.c

index 18f7985..bfd0624 100644 (file)
@@ -73,7 +73,7 @@ svcgssd_run()
                int save_err;
 
                while (f == NULL) {
-                       f = fopen(gss_rpc_channel_path, "rw");
+                       f = fopen(gss_rpc_channel_path, "r+");
                        if (f == NULL) {
                                printerr(4, "failed to open %s: %s\n",
                                         gss_rpc_channel_path, strerror(errno));