ceph: fix message revocation
commited98adad3d87594c55347824e85137d1829c9e70
authorSage Weil <sage@newdream.net>
Mon, 5 Jul 2010 19:15:14 +0000 (5 12:15 -0700)
committerSage Weil <sage@newdream.net>
Mon, 5 Jul 2010 19:16:23 +0000 (5 12:16 -0700)
treeb22414183f7eff1ac1ba606a3ebf2357f0876b4c
parent153a10939ea6e42e9c0115b0645060d0d7bb4697
ceph: fix message revocation

A message can be on a queue (pending or sent), or out_msg (sending), or
both.  We were assuming that if it's not on a queue it couldn't be out_msg,
but that was false in the case of lossy connections like the OSD.  Fix
ceph_con_revoke() to treat these cases independently.  Also, fix the
out_kvec_is_message check to only trigger if we are currently sending
_this_ message.

This fixes a GPF in tcp_sendpage, triggered by OSD restarts.

Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/messenger.c