Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'nfs-for-3.12-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs

Pull NFS client bugfix from Trond Myklebust:
"Fix a regression due to incorrect sharing of gss auth caches"

* tag 'nfs-for-3.12-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
RPCSEC_GSS: fix crash on destroying gss auth

+11
+11
net/sunrpc/auth_gss/auth_gss.c
··· 1075 1075 kref_put(&gss_auth->kref, gss_free_callback); 1076 1076 } 1077 1077 1078 + /* 1079 + * Auths may be shared between rpc clients that were cloned from a 1080 + * common client with the same xprt, if they also share the flavor and 1081 + * target_name. 1082 + * 1083 + * The auth is looked up from the oldest parent sharing the same 1084 + * cl_xprt, and the auth itself references only that common parent 1085 + * (which is guaranteed to last as long as any of its descendants). 1086 + */ 1078 1087 static struct gss_auth * 1079 1088 gss_auth_find_or_add_hashed(struct rpc_auth_create_args *args, 1080 1089 struct rpc_clnt *clnt, ··· 1097 1088 gss_auth, 1098 1089 hash, 1099 1090 hashval) { 1091 + if (gss_auth->client != clnt) 1092 + continue; 1100 1093 if (gss_auth->rpc_auth.au_flavor != args->pseudoflavor) 1101 1094 continue; 1102 1095 if (gss_auth->target_name != args->target_name) {