rbd: Clear ceph_msg->bio_iter for retransmitted message
The bug can cause NULL pointer dereference in write_partial_msg_pages
Signed-off-by: Zheng Yan <zheng.z.yan@intel.com>
Reviewed-by: Alex Elder <elder@inktank.com>
(cherry picked from commit 43643528cc
)
This commit is contained in:
parent
88ed6ea0b2
commit
b132cf4c73
1 changed files with 4 additions and 0 deletions
|
@ -563,6 +563,10 @@ static void prepare_write_message(struct ceph_connection *con)
|
||||||
m->hdr.seq = cpu_to_le64(++con->out_seq);
|
m->hdr.seq = cpu_to_le64(++con->out_seq);
|
||||||
m->needs_out_seq = false;
|
m->needs_out_seq = false;
|
||||||
}
|
}
|
||||||
|
#ifdef CONFIG_BLOCK
|
||||||
|
else
|
||||||
|
m->bio_iter = NULL;
|
||||||
|
#endif
|
||||||
|
|
||||||
dout("prepare_write_message %p seq %lld type %d len %d+%d+%d %d pgs\n",
|
dout("prepare_write_message %p seq %lld type %d len %d+%d+%d %d pgs\n",
|
||||||
m, con->out_seq, le16_to_cpu(m->hdr.type),
|
m, con->out_seq, le16_to_cpu(m->hdr.type),
|
||||||
|
|
Loading…
Add table
Reference in a new issue