1
0
Fork 0
alistair23-linux/net/ceph
Sage Weil e00de341fd libceph: fix msgr standby handling
The standby logic used to be pretty dependent on the work requeueing
behavior that changed when we switched to WQ_NON_REENTRANT.  It was also
very fragile.

Restructure things so that:
 - We clear WRITE_PENDING when we set STANDBY.  This ensures we will
   requeue work when we wake up later.
 - con_work backs off if STANDBY is set.  There is nothing to do if we are
   in standby.
 - clear_standby() helper is called by both con_send() and con_keepalive(),
   the two actions that can wake us up again.  Move the connect_seq++
   logic here.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-04 12:25:05 -08:00
..
crush ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
Kconfig ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
Makefile Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2010-12-08 13:47:38 -08:00
armor.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
auth.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
auth_none.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
auth_none.h ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
auth_x.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
auth_x.h ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
auth_x_protocol.h ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
buffer.c net: allow GFP_HIGHMEM in __vmalloc() 2010-11-21 10:04:04 -08:00
ceph_common.c ceph: don't crash when passed bad mount options 2010-10-20 15:38:22 -07:00
ceph_fs.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
ceph_hash.c ceph: add dir_layout to inode 2011-01-12 15:15:12 -08:00
ceph_strings.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
crypto.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
crypto.h ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
debugfs.c rbd: introduce rados block device (rbd), based on libceph 2010-10-20 15:38:13 -07:00
messenger.c libceph: fix msgr standby handling 2011-03-04 12:25:05 -08:00
mon_client.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
msgpool.c ceph: factor out libceph from Ceph file system 2010-10-20 15:37:28 -07:00
osd_client.c ceph: explicitly specify page alignment in network messages 2010-11-09 12:43:17 -08:00
osdmap.c ceph: Always free allocated memory in osdmap_decode() 2011-01-12 15:15:14 -08:00
pagelist.c ceph: fix num_pages_free accounting in pagelist 2010-10-20 15:38:23 -07:00
pagevec.c libceph: fix handling of short returns from get_user_pages 2011-03-03 13:47:39 -08:00