libceph: behave in mon_fault() if cur_mon < 0
authorIlya Dryomov <idryomov@gmail.com>
Sat, 23 Jan 2016 14:57:51 +0000 (15:57 +0100)
committerIlya Dryomov <idryomov@gmail.com>
Fri, 25 Mar 2016 17:51:40 +0000 (18:51 +0100)
commitb5d91704f53efc5a2a93e88e323877e6889b0f5b
tree16dcc0c8a99d937f412e0986a33591c21cf33aa4
parentbee3a37c470e4febcb05556ceafcb70929268edd
libceph: behave in mon_fault() if cur_mon < 0

This can happen if __close_session() in ceph_monc_stop() races with
a connection reset.  We need to ignore such faults, otherwise it's
likely we would take !hunting, call __schedule_delayed() and end up
with delayed_work() executing on invalid memory, among other things.

The (two!) con->private tests are useless, as nothing ever clears
con->private.  Nuke them.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
net/ceph/mon_client.c