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

xprtrdma: Add a field of bit flags to struct rpcrdma_req

We have one boolean flag in rpcrdma_req today. I'd like to add more
flags, so convert that boolean to a bit flag.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>

authored by

Chuck Lever and committed by
Anna Schumaker
531cca0c ae72950a

+8 -4
+1 -1
net/sunrpc/xprtrdma/backchannel.c
··· 42 42 req = rpcrdma_create_req(r_xprt); 43 43 if (IS_ERR(req)) 44 44 return PTR_ERR(req); 45 - req->rl_backchannel = true; 45 + __set_bit(RPCRDMA_REQ_F_BACKCHANNEL, &req->rl_flags); 46 46 47 47 rb = rpcrdma_alloc_regbuf(RPCRDMA_HDRBUF_SIZE, 48 48 DMA_TO_DEVICE, GFP_KERNEL);
+1 -1
net/sunrpc/xprtrdma/transport.c
··· 680 680 struct rpcrdma_req *req = rpcr_to_rdmar(rqst); 681 681 struct rpcrdma_ia *ia = &r_xprt->rx_ia; 682 682 683 - if (req->rl_backchannel) 683 + if (test_bit(RPCRDMA_REQ_F_BACKCHANNEL, &req->rl_flags)) 684 684 return; 685 685 686 686 dprintk("RPC: %s: called on 0x%p\n", __func__, req->rl_reply);
-1
net/sunrpc/xprtrdma/verbs.c
··· 1167 1167 rc = PTR_ERR(req); 1168 1168 goto out; 1169 1169 } 1170 - req->rl_backchannel = false; 1171 1170 list_add(&req->rl_list, &buf->rb_send_bufs); 1172 1171 } 1173 1172
+6 -1
net/sunrpc/xprtrdma/xprt_rdma.h
··· 377 377 struct rpcrdma_regbuf *rl_recvbuf; /* rq_rcv_buf */ 378 378 379 379 struct list_head rl_all; 380 - bool rl_backchannel; 380 + unsigned long rl_flags; 381 381 382 382 struct list_head rl_registered; /* registered segments */ 383 383 struct rpcrdma_mr_seg rl_segments[RPCRDMA_MAX_SEGS]; 384 + }; 385 + 386 + /* rl_flags */ 387 + enum { 388 + RPCRDMA_REQ_F_BACKCHANNEL = 0, 384 389 }; 385 390 386 391 static inline void