Loading include/linux/sunrpc/svcauth.h +2 −1 Original line number Diff line number Diff line Loading @@ -116,6 +116,7 @@ struct auth_ops { #define SVC_PENDING 9 #define SVC_COMPLETE 10 struct svc_xprt; extern int svc_authenticate(struct svc_rqst *rqstp, __be32 *authp); extern int svc_authorise(struct svc_rqst *rqstp); Loading @@ -131,7 +132,7 @@ extern struct auth_domain *auth_domain_find(char *name); extern struct auth_domain *auth_unix_lookup(struct in6_addr *addr); extern int auth_unix_forget_old(struct auth_domain *dom); extern void svcauth_unix_purge(void); extern void svcauth_unix_info_release(void *); extern void svcauth_unix_info_release(struct svc_xprt *xpt); extern int svcauth_unix_set_client(struct svc_rqst *rqstp); static inline unsigned long hash_str(char *name, int bits) Loading net/sunrpc/svc_xprt.c +2 −3 Original line number Diff line number Diff line Loading @@ -128,9 +128,8 @@ static void svc_xprt_free(struct kref *kref) struct svc_xprt *xprt = container_of(kref, struct svc_xprt, xpt_ref); struct module *owner = xprt->xpt_class->xcl_owner; if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags) && xprt->xpt_auth_cache != NULL) svcauth_unix_info_release(xprt->xpt_auth_cache); if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) svcauth_unix_info_release(xprt); xprt->xpt_ops->xpo_free(xprt); module_put(owner); } Loading net/sunrpc/svcauth_unix.c +6 −3 Original line number Diff line number Diff line Loading @@ -472,9 +472,12 @@ ip_map_cached_put(struct svc_rqst *rqstp, struct ip_map *ipm) } void svcauth_unix_info_release(void *info) svcauth_unix_info_release(struct svc_xprt *xpt) { struct ip_map *ipm = info; struct ip_map *ipm; ipm = xpt->xpt_auth_cache; if (ipm != NULL) cache_put(&ipm->h, &ip_map_cache); } Loading Loading
include/linux/sunrpc/svcauth.h +2 −1 Original line number Diff line number Diff line Loading @@ -116,6 +116,7 @@ struct auth_ops { #define SVC_PENDING 9 #define SVC_COMPLETE 10 struct svc_xprt; extern int svc_authenticate(struct svc_rqst *rqstp, __be32 *authp); extern int svc_authorise(struct svc_rqst *rqstp); Loading @@ -131,7 +132,7 @@ extern struct auth_domain *auth_domain_find(char *name); extern struct auth_domain *auth_unix_lookup(struct in6_addr *addr); extern int auth_unix_forget_old(struct auth_domain *dom); extern void svcauth_unix_purge(void); extern void svcauth_unix_info_release(void *); extern void svcauth_unix_info_release(struct svc_xprt *xpt); extern int svcauth_unix_set_client(struct svc_rqst *rqstp); static inline unsigned long hash_str(char *name, int bits) Loading
net/sunrpc/svc_xprt.c +2 −3 Original line number Diff line number Diff line Loading @@ -128,9 +128,8 @@ static void svc_xprt_free(struct kref *kref) struct svc_xprt *xprt = container_of(kref, struct svc_xprt, xpt_ref); struct module *owner = xprt->xpt_class->xcl_owner; if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags) && xprt->xpt_auth_cache != NULL) svcauth_unix_info_release(xprt->xpt_auth_cache); if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags)) svcauth_unix_info_release(xprt); xprt->xpt_ops->xpo_free(xprt); module_put(owner); } Loading
net/sunrpc/svcauth_unix.c +6 −3 Original line number Diff line number Diff line Loading @@ -472,9 +472,12 @@ ip_map_cached_put(struct svc_rqst *rqstp, struct ip_map *ipm) } void svcauth_unix_info_release(void *info) svcauth_unix_info_release(struct svc_xprt *xpt) { struct ip_map *ipm = info; struct ip_map *ipm; ipm = xpt->xpt_auth_cache; if (ipm != NULL) cache_put(&ipm->h, &ip_map_cache); } Loading