Commit 07aa1558 authored by Alex Elder's avatar Alex Elder Committed by Sage Weil

libceph: activate message data assignment checks

The mds client no longer tries to assign zero-length message data,
and the osd client no longer sets its data info more than once.
This allows us to activate assertions in the messenger to verify
these things never happen.

This resolves both of these:
    http://tracker.ceph.com/issues/4263
    http://tracker.ceph.com/issues/4284Signed-off-by: default avatarAlex Elder <elder@inktank.com>
Reviewed-by: default avatarGreg Farnum <greg@inktank.com>
parent 70636773
...@@ -2690,10 +2690,10 @@ EXPORT_SYMBOL(ceph_con_keepalive); ...@@ -2690,10 +2690,10 @@ EXPORT_SYMBOL(ceph_con_keepalive);
void ceph_msg_data_set_pages(struct ceph_msg *msg, struct page **pages, void ceph_msg_data_set_pages(struct ceph_msg *msg, struct page **pages,
size_t length, size_t alignment) size_t length, size_t alignment)
{ {
/* BUG_ON(!pages); */ BUG_ON(!pages);
/* BUG_ON(!length); */ BUG_ON(!length);
/* BUG_ON(msg->pages); */ BUG_ON(msg->pages);
/* BUG_ON(msg->length); */ BUG_ON(msg->length);
msg->pages = pages; msg->pages = pages;
msg->length = length; msg->length = length;
...@@ -2704,9 +2704,9 @@ EXPORT_SYMBOL(ceph_msg_data_set_pages); ...@@ -2704,9 +2704,9 @@ EXPORT_SYMBOL(ceph_msg_data_set_pages);
void ceph_msg_data_set_pagelist(struct ceph_msg *msg, void ceph_msg_data_set_pagelist(struct ceph_msg *msg,
struct ceph_pagelist *pagelist) struct ceph_pagelist *pagelist)
{ {
/* BUG_ON(!pagelist); */ BUG_ON(!pagelist);
/* BUG_ON(!pagelist->length); */ BUG_ON(!pagelist->length);
/* BUG_ON(msg->pagelist); */ BUG_ON(msg->pagelist);
msg->pagelist = pagelist; msg->pagelist = pagelist;
} }
...@@ -2714,8 +2714,8 @@ EXPORT_SYMBOL(ceph_msg_data_set_pagelist); ...@@ -2714,8 +2714,8 @@ EXPORT_SYMBOL(ceph_msg_data_set_pagelist);
void ceph_msg_data_set_bio(struct ceph_msg *msg, struct bio *bio) void ceph_msg_data_set_bio(struct ceph_msg *msg, struct bio *bio)
{ {
/* BUG_ON(!bio); */ BUG_ON(!bio);
/* BUG_ON(msg->bio); */ BUG_ON(msg->bio);
msg->bio = bio; msg->bio = bio;
} }
...@@ -2723,9 +2723,9 @@ EXPORT_SYMBOL(ceph_msg_data_set_bio); ...@@ -2723,9 +2723,9 @@ EXPORT_SYMBOL(ceph_msg_data_set_bio);
void ceph_msg_data_set_trail(struct ceph_msg *msg, struct ceph_pagelist *trail) void ceph_msg_data_set_trail(struct ceph_msg *msg, struct ceph_pagelist *trail)
{ {
/* BUG_ON(!trail); */ BUG_ON(!trail);
/* BUG_ON(!trail->length); */ BUG_ON(!trail->length);
/* BUG_ON(msg->trail); */ BUG_ON(msg->trail);
msg->trail = trail; msg->trail = trail;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment