alistair23-linux/fs/ceph
Sage Weil 350b1c32ea ceph: control access to page vector for incoming data
When we issue an OSD read, we specify a vector of pages that the data is to
be read into.  The request may be sent multiple times, to multiple OSDs, if
the osdmap changes, which means we can get more than one reply.

Only read data into the page vector if the reply is coming from the
OSD we last sent the request to.  Keep track of which connection is using
the vector by taking a reference.  If another connection was already
using the vector before and a new reply comes in on the right connection,
revoke the pages from the other connection.

Signed-off-by: Sage Weil <sage@newdream.net>
2009-12-23 08:17:20 -08:00
..
crush ceph: whitespace cleanup 2009-12-03 14:59:44 -08:00
addr.c ceph: writeback congestion control 2009-12-21 16:39:56 -08:00
auth.c ceph: mount fails immediately on error 2009-11-20 14:24:46 -08:00
auth.h ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
auth_none.c ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
auth_none.h ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
buffer.c ceph: simplify ceph_buffer interface 2009-12-07 12:17:17 -08:00
buffer.h ceph: simplify ceph_buffer interface 2009-12-07 12:17:17 -08:00
caps.c ceph: do not touch_caps while iterating over caps list 2009-12-23 08:17:14 -08:00
ceph_debug.h
ceph_frag.c
ceph_frag.h
ceph_fs.c ceph: make object hash a pg_pool property 2009-11-06 21:55:25 -08:00
ceph_fs.h ceph: mark v0.18 release 2009-12-04 10:27:17 -08:00
ceph_hash.c ceph: whitespace cleanup 2009-12-03 14:59:44 -08:00
ceph_hash.h ceph: make object hash a pg_pool property 2009-11-06 21:55:25 -08:00
ceph_strings.c ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
debugfs.c ceph: writeback congestion control 2009-12-21 16:39:56 -08:00
decode.h ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
dir.c ceph: do not drop lease during revalidate 2009-12-21 16:39:58 -08:00
export.c ceph: nfs re-export support 2009-10-06 11:31:13 -07:00
file.c ceph: fix sparse endian warning 2009-11-04 16:36:12 -08:00
inode.c ceph: ensure rename target dentry fails revalidation 2009-12-21 16:39:57 -08:00
ioctl.c ceph: allow preferred osd to be get/set via layout ioctl 2009-12-03 14:59:48 -08:00
ioctl.h ceph: allow preferred osd to be get/set via layout ioctl 2009-12-03 14:59:48 -08:00
Kconfig ceph: Kconfig, Makefile 2009-10-06 11:31:15 -07:00
Makefile ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
mds_client.c ceph: do not touch_caps while iterating over caps list 2009-12-23 08:17:14 -08:00
mds_client.h ceph: do not touch_caps while iterating over caps list 2009-12-23 08:17:14 -08:00
mdsmap.c ceph: hex dump corrupt server data to KERN_DEBUG 2009-12-21 16:39:52 -08:00
mdsmap.h ceph: decode updated mdsmap format 2009-11-20 14:24:33 -08:00
messenger.c ceph: control access to page vector for incoming data 2009-12-23 08:17:20 -08:00
messenger.h ceph: control access to page vector for incoming data 2009-12-23 08:17:20 -08:00
mon_client.c ceph: hex dump corrupt server data to KERN_DEBUG 2009-12-21 16:39:52 -08:00
mon_client.h ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
msgpool.c ceph: use kref for ceph_msg 2009-12-07 15:55:05 -08:00
msgpool.h ceph: warn on allocation from msgpool with larger front_len 2009-10-15 18:14:43 -07:00
msgr.h ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
osd_client.c ceph: control access to page vector for incoming data 2009-12-23 08:17:20 -08:00
osd_client.h ceph: control access to page vector for incoming data 2009-12-23 08:17:20 -08:00
osdmap.c ceph: fix incremental osdmap pg_temp decoding bug 2009-12-21 16:40:00 -08:00
osdmap.h ceph: fix endian conversions for ceph_pg 2009-11-04 16:36:07 -08:00
rados.h ceph: negotiate authentication protocol; implement AUTH_NONE protocol 2009-11-18 16:19:57 -08:00
README ceph: make object hash a pg_pool property 2009-11-06 21:55:25 -08:00
snap.c ceph: hex dump corrupt server data to KERN_DEBUG 2009-12-21 16:39:52 -08:00
super.c ceph: only unregister registered bdi 2009-12-23 08:17:18 -08:00
super.h ceph: writeback congestion control 2009-12-21 16:39:56 -08:00
types.h ceph: make object hash a pg_pool property 2009-11-06 21:55:25 -08:00
xattr.c ceph: simplify ceph_buffer interface 2009-12-07 12:17:17 -08:00

#
# The following files are shared by (and manually synchronized
# between) the Ceph userland and kernel client.
#
# userland                  kernel
src/include/ceph_fs.h	    fs/ceph/ceph_fs.h
src/include/ceph_fs.cc	    fs/ceph/ceph_fs.c
src/include/msgr.h	    fs/ceph/msgr.h
src/include/rados.h	    fs/ceph/rados.h
src/include/ceph_strings.cc fs/ceph/ceph_strings.c
src/include/ceph_frag.h	    fs/ceph/ceph_frag.h
src/include/ceph_frag.cc    fs/ceph/ceph_frag.c
src/include/ceph_hash.h	    fs/ceph/ceph_hash.h
src/include/ceph_hash.cc    fs/ceph/ceph_hash.c
src/crush/crush.c	    fs/ceph/crush/crush.c
src/crush/crush.h	    fs/ceph/crush/crush.h
src/crush/mapper.c	    fs/ceph/crush/mapper.c
src/crush/mapper.h	    fs/ceph/crush/mapper.h
src/crush/hash.h	    fs/ceph/crush/hash.h
src/crush/hash.c	    fs/ceph/crush/hash.c