diff options
author | zhenwei pi <pizhenwei@bytedance.com> | 2020-10-25 19:51:24 +0800 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2020-10-27 10:00:05 +0100 |
commit | 25c1ca6ecaba3b751d3f7ff92d5cddff3b05f8d0 (patch) | |
tree | 9fc7108b3d04b889173410c6a5dffb1bebf4d212 /.cocciconfig | |
parent | 8685699c28d7452ff06d62b4692df985eb7301f0 (diff) | |
download | lwn-25c1ca6ecaba3b751d3f7ff92d5cddff3b05f8d0.tar.gz lwn-25c1ca6ecaba3b751d3f7ff92d5cddff3b05f8d0.zip |
nvme-rdma: handle unexpected nvme completion data length
Receiving a zero length message leads to the following warnings because
the CQE is processed twice:
refcount_t: underflow; use-after-free.
WARNING: CPU: 0 PID: 0 at lib/refcount.c:28
RIP: 0010:refcount_warn_saturate+0xd9/0xe0
Call Trace:
<IRQ>
nvme_rdma_recv_done+0xf3/0x280 [nvme_rdma]
__ib_process_cq+0x76/0x150 [ib_core]
...
Sanity check the received data length, to avoids this.
Thanks to Chao Leng & Sagi for suggestions.
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to '.cocciconfig')
0 files changed, 0 insertions, 0 deletions