mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
svcrdma: Catch another Reply chunk overflow case
When space in the Reply chunk runs out in the middle of a segment, we end up passing a zero-length SGL to rdma_rw_ctx_init(), and it oopses. Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
This commit is contained in:
@@ -460,6 +460,8 @@ svc_rdma_build_writes(struct svc_rdma_write_info *info,
|
|||||||
offset += info->wi_seg_off;
|
offset += info->wi_seg_off;
|
||||||
|
|
||||||
write_len = min(remaining, length - info->wi_seg_off);
|
write_len = min(remaining, length - info->wi_seg_off);
|
||||||
|
if (!write_len)
|
||||||
|
goto out_overflow;
|
||||||
ctxt = svc_rdma_get_rw_ctxt(rdma,
|
ctxt = svc_rdma_get_rw_ctxt(rdma,
|
||||||
(write_len >> PAGE_SHIFT) + 2);
|
(write_len >> PAGE_SHIFT) + 2);
|
||||||
if (!ctxt)
|
if (!ctxt)
|
||||||
|
Reference in New Issue
Block a user