SVCRDMA: Fix erroneous BUG_ON in send_write
Subsystems (3)
PATCH 1/1 SVCRDMA: Fix erroneous BUG_ON in send_write
The assertion that checks for sge context overflow is incorrectly hard-coded to 32. This causes a kernel bug check when using big-data mounts. Changed the BUG_ON to use the computed value RPCSVC_MAXPAGES.
Signed-off-by Tom Tucker <[email protected]>
---
Please queue this for 2.6.25. This problem was found by a 2.6.25 user who sent me the oops.
net/sunrpc/xprtrdma/svc_rdma_sendto.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
net/sunrpc/xprtrdma/svc_rdma_sendto.c +1 -1
@@ -156,7 +156,7 @@ static int send_write(struct svcxprt_rdma *xprt, struct svc_rqst *rqstp,struct svc_rdma_op_ctxt *ctxt;int ret =0 ; -BUG_ON (sge_count >=32 ); +BUG_ON (sge_count >RPCSVC_MAXPAGES ); dprintk("svcrdma: RDMA_WRITE rmr=%x, to=%llx, xdr_off=%d, " "write_len=%d, xdr_sge=%p, sge_count=%d\n", rmr, (unsigned long long)to, xdr_off,