diff options
author | Alex Elder <elder@inktank.com> | 2012-05-16 15:16:38 -0500 |
---|---|---|
committer | Alex Elder <elder@dreamhost.com> | 2012-05-17 08:18:12 -0500 |
commit | e10c758e4031a801ea4d2f8fb39bf14c2658d74b (patch) | |
tree | db67e6d84e5fa76b4d573d4f551019141115af01 /net/ceph/auth_x.c | |
parent | e825a66df97776d30a48a187e3a986736af43945 (diff) |
ceph: don't set WRITE_PENDING too early
prepare_write_connect() prepares a connect message, then sets
WRITE_PENDING on the connection. Then *after* this, it calls
prepare_connect_authorizer(), which updates the content of the
connection buffer already queued for sending. It's also possible it
will result in prepare_write_connect() returning -EAGAIN despite the
WRITE_PENDING big getting set.
Fix this by preparing the connect authorizer first, setting the
WRITE_PENDING bit only after that is done.
Partially addresses http://tracker.newdream.net/issues/2424
Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Diffstat (limited to 'net/ceph/auth_x.c')
0 files changed, 0 insertions, 0 deletions