diff options
Diffstat (limited to 'include/linux/sunrpc/svc.h')
| -rw-r--r-- | include/linux/sunrpc/svc.h | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/include/linux/sunrpc/svc.h b/include/linux/sunrpc/svc.h index 73e130a840ce..e52385340b3b 100644 --- a/include/linux/sunrpc/svc.h +++ b/include/linux/sunrpc/svc.h @@ -109,7 +109,7 @@ struct svc_serv {  	spinlock_t		sv_cb_lock;	/* protects the svc_cb_list */  	wait_queue_head_t	sv_cb_waitq;	/* sleep here if there are no  						 * entries in the svc_cb_list */ -	struct svc_xprt		*sv_bc_xprt;	/* callback on fore channel */ +	bool			sv_bc_enabled;	/* service uses backchannel */  #endif /* CONFIG_SUNRPC_BACKCHANNEL */  }; @@ -295,9 +295,12 @@ struct svc_rqst {  	struct svc_cacherep *	rq_cacherep;	/* cache info */  	struct task_struct	*rq_task;	/* service thread */  	spinlock_t		rq_lock;	/* per-request lock */ +	struct net		*rq_bc_net;	/* pointer to backchannel's +						 * net namespace +						 */  }; -#define SVC_NET(svc_rqst)	(svc_rqst->rq_xprt->xpt_net) +#define SVC_NET(rqst) (rqst->rq_xprt ? rqst->rq_xprt->xpt_net : rqst->rq_bc_net)  /*   * Rigorous type checking on sockaddr type conversions | 
