diff options
| author | Chuck Lever <chuck.lever@oracle.com> | 2016-05-02 14:42:29 -0400 | 
|---|---|---|
| committer | Anna Schumaker <Anna.Schumaker@Netapp.com> | 2016-05-17 15:48:02 -0400 | 
| commit | 766656b022a629201b6e183c7837160cd0919286 (patch) | |
| tree | 1da309001d31e601180bb3c214fd415f7e684232 /net | |
| parent | 660bb497d0ae0c9e6be5beaff7ba17bfa5c9718c (diff) | |
xprtrdma: Move fr_xprt and fr_worker to struct rpcrdma_mw
In a subsequent patch, the fr_xprt and fr_worker fields will be
needed by another memory registration mode. Move them into the
generic rpcrdma_mw structure that wraps struct rpcrdma_frmr.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Tested-by: Steve Wise <swise@opengridcomputing.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'net')
| -rw-r--r-- | net/sunrpc/xprtrdma/frwr_ops.c | 10 | ||||
| -rw-r--r-- | net/sunrpc/xprtrdma/xprt_rdma.h | 4 | 
2 files changed, 7 insertions, 7 deletions
diff --git a/net/sunrpc/xprtrdma/frwr_ops.c b/net/sunrpc/xprtrdma/frwr_ops.c index 4e0a5c1abea4..1251a1d4d92f 100644 --- a/net/sunrpc/xprtrdma/frwr_ops.c +++ b/net/sunrpc/xprtrdma/frwr_ops.c @@ -150,9 +150,9 @@ static void  __frwr_recovery_worker(struct work_struct *work)  {  	struct rpcrdma_mw *r = container_of(work, struct rpcrdma_mw, -					    frmr.fr_work); +					    mw_work); -	__frwr_reset_and_unmap(r->frmr.fr_xprt, r); +	__frwr_reset_and_unmap(r->mw_xprt, r);  	return;  } @@ -162,8 +162,8 @@ __frwr_recovery_worker(struct work_struct *work)  static void  __frwr_queue_recovery(struct rpcrdma_mw *r)  { -	INIT_WORK(&r->frmr.fr_work, __frwr_recovery_worker); -	queue_work(frwr_recovery_wq, &r->frmr.fr_work); +	INIT_WORK(&r->mw_work, __frwr_recovery_worker); +	queue_work(frwr_recovery_wq, &r->mw_work);  }  static int @@ -378,9 +378,9 @@ frwr_op_init(struct rpcrdma_xprt *r_xprt)  			return rc;  		} +		r->mw_xprt = r_xprt;  		list_add(&r->mw_list, &buf->rb_mws);  		list_add(&r->mw_all, &buf->rb_all); -		r->frmr.fr_xprt = r_xprt;  	}  	return 0; diff --git a/net/sunrpc/xprtrdma/xprt_rdma.h b/net/sunrpc/xprtrdma/xprt_rdma.h index b5793cb59d5c..97c90a8f5e01 100644 --- a/net/sunrpc/xprtrdma/xprt_rdma.h +++ b/net/sunrpc/xprtrdma/xprt_rdma.h @@ -229,8 +229,6 @@ struct rpcrdma_frmr {  	struct ib_cqe			fr_cqe;  	enum rpcrdma_frmr_state		fr_state;  	struct completion		fr_linv_done; -	struct work_struct		fr_work; -	struct rpcrdma_xprt		*fr_xprt;  	union {  		struct ib_reg_wr	fr_regwr;  		struct ib_send_wr	fr_invwr; @@ -247,6 +245,8 @@ struct rpcrdma_mw {  		struct rpcrdma_fmr	fmr;  		struct rpcrdma_frmr	frmr;  	}; +	struct work_struct	mw_work; +	struct rpcrdma_xprt	*mw_xprt;  	struct list_head	mw_list;  	struct list_head	mw_all;  };  | 
