summaryrefslogtreecommitdiffstats
path: root/fs/ceph
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2011-08-09 09:41:59 -0700
committerSage Weil <sage@newdream.net>2011-10-25 16:10:15 -0700
commit6ab00d465a1c8c02c2216f8220727282f3aa50b5 (patch)
treeb4cc08e1be5ffe0a60d9090d86f7f0d05b1f6e36 /fs/ceph
parent6a8ea4706adb4b4d8f77a8da5f9778b65fbf6f48 (diff)
downloadlinux-6ab00d465a1c8c02c2216f8220727282f3aa50b5.tar.gz
linux-6ab00d465a1c8c02c2216f8220727282f3aa50b5.tar.bz2
linux-6ab00d465a1c8c02c2216f8220727282f3aa50b5.zip
libceph: create messenger with client
This simplifies the init/shutdown paths, and makes client->msgr available during the rest of the setup process. Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph')
-rw-r--r--fs/ceph/super.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index 387addbf942e..f90dc0b011a7 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -430,20 +430,23 @@ struct ceph_fs_client *create_fs_client(struct ceph_mount_options *fsopt,
struct ceph_options *opt)
{
struct ceph_fs_client *fsc;
+ const unsigned supported_features =
+ CEPH_FEATURE_FLOCK |
+ CEPH_FEATURE_DIRLAYOUTHASH;
+ const unsigned required_features = 0;
int err = -ENOMEM;
fsc = kzalloc(sizeof(*fsc), GFP_KERNEL);
if (!fsc)
return ERR_PTR(-ENOMEM);
- fsc->client = ceph_create_client(opt, fsc);
+ fsc->client = ceph_create_client(opt, fsc, supported_features,
+ required_features);
if (IS_ERR(fsc->client)) {
err = PTR_ERR(fsc->client);
goto fail;
}
fsc->client->extra_mon_dispatch = extra_mon_dispatch;
- fsc->client->supported_features |= CEPH_FEATURE_FLOCK |
- CEPH_FEATURE_DIRLAYOUTHASH;
fsc->client->monc.want_mdsmap = 1;
fsc->mount_options = fsopt;