Loading include/linux/sunrpc/svc_xprt.h +1 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,7 @@ struct svc_xprt { struct list_head xpt_users; /* callbacks on free */ struct net *xpt_net; struct rpc_xprt *xpt_bc_xprt; /* NFSv4.1 backchannel */ }; static inline void unregister_xpt_user(struct svc_xprt *xpt, struct svc_xpt_user *u) Loading include/linux/sunrpc/svcsock.h +0 −1 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ struct svc_sock { /* private TCP part */ u32 sk_reclen; /* length of record */ u32 sk_tcplen; /* current read length */ struct rpc_xprt *sk_bc_xprt; /* NFSv4.1 backchannel xprt */ }; /* Loading net/sunrpc/svcsock.c +6 −4 Original line number Diff line number Diff line Loading @@ -987,15 +987,17 @@ static int svc_process_calldir(struct svc_sock *svsk, struct svc_rqst *rqstp, vec[0] = rqstp->rq_arg.head[0]; } else { /* REPLY */ if (svsk->sk_bc_xprt) req = xprt_lookup_rqst(svsk->sk_bc_xprt, xid); struct rpc_xprt *bc_xprt = svsk->sk_xprt.xpt_bc_xprt; if (bc_xprt) req = xprt_lookup_rqst(bc_xprt, xid); if (!req) { printk(KERN_NOTICE "%s: Got unrecognized reply: " "calldir 0x%x sk_bc_xprt %p xid %08x\n", "calldir 0x%x xpt_bc_xprt %p xid %08x\n", __func__, ntohl(calldir), svsk->sk_bc_xprt, xid); bc_xprt, xid); vec[0] = rqstp->rq_arg.head[0]; goto out; } Loading net/sunrpc/xprtsock.c +1 −1 Original line number Diff line number Diff line Loading @@ -2379,9 +2379,9 @@ static struct rpc_xprt *xs_setup_bc_tcp(struct xprt_create *args) * The backchannel uses the same socket connection as the * forechannel */ args->bc_xprt->xpt_bc_xprt = xprt; xprt->bc_xprt = args->bc_xprt; bc_sock = container_of(args->bc_xprt, struct svc_sock, sk_xprt); bc_sock->sk_bc_xprt = xprt; transport->sock = bc_sock->sk_sock; transport->inet = bc_sock->sk_sk; Loading Loading
include/linux/sunrpc/svc_xprt.h +1 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,7 @@ struct svc_xprt { struct list_head xpt_users; /* callbacks on free */ struct net *xpt_net; struct rpc_xprt *xpt_bc_xprt; /* NFSv4.1 backchannel */ }; static inline void unregister_xpt_user(struct svc_xprt *xpt, struct svc_xpt_user *u) Loading
include/linux/sunrpc/svcsock.h +0 −1 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ struct svc_sock { /* private TCP part */ u32 sk_reclen; /* length of record */ u32 sk_tcplen; /* current read length */ struct rpc_xprt *sk_bc_xprt; /* NFSv4.1 backchannel xprt */ }; /* Loading
net/sunrpc/svcsock.c +6 −4 Original line number Diff line number Diff line Loading @@ -987,15 +987,17 @@ static int svc_process_calldir(struct svc_sock *svsk, struct svc_rqst *rqstp, vec[0] = rqstp->rq_arg.head[0]; } else { /* REPLY */ if (svsk->sk_bc_xprt) req = xprt_lookup_rqst(svsk->sk_bc_xprt, xid); struct rpc_xprt *bc_xprt = svsk->sk_xprt.xpt_bc_xprt; if (bc_xprt) req = xprt_lookup_rqst(bc_xprt, xid); if (!req) { printk(KERN_NOTICE "%s: Got unrecognized reply: " "calldir 0x%x sk_bc_xprt %p xid %08x\n", "calldir 0x%x xpt_bc_xprt %p xid %08x\n", __func__, ntohl(calldir), svsk->sk_bc_xprt, xid); bc_xprt, xid); vec[0] = rqstp->rq_arg.head[0]; goto out; } Loading
net/sunrpc/xprtsock.c +1 −1 Original line number Diff line number Diff line Loading @@ -2379,9 +2379,9 @@ static struct rpc_xprt *xs_setup_bc_tcp(struct xprt_create *args) * The backchannel uses the same socket connection as the * forechannel */ args->bc_xprt->xpt_bc_xprt = xprt; xprt->bc_xprt = args->bc_xprt; bc_sock = container_of(args->bc_xprt, struct svc_sock, sk_xprt); bc_sock->sk_bc_xprt = xprt; transport->sock = bc_sock->sk_sock; transport->inet = bc_sock->sk_sk; Loading