aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ceph/super.c
diff options
context:
space:
mode:
authorNicholas Bellinger <nab@linux-iscsi.org>2011-01-16 21:21:04 +0000
committerNicholas Bellinger <nab@linux-iscsi.org>2011-01-16 21:21:04 +0000
commitf652f6c5b7cfdf139f4155d78f397e99ae1c4acc (patch)
tree71c6344688bf56ea6aaf18c586ab69ff4f077ade /fs/ceph/super.c
parent140e3008e7fe1526cbb12f8f07dbc273ac713b75 (diff)
parentc66ac9db8d4ad9994a02b3e933ea2ccc643e1fe5 (diff)
downloadkernel_samsung_smdk4412-f652f6c5b7cfdf139f4155d78f397e99ae1c4acc.zip
kernel_samsung_smdk4412-f652f6c5b7cfdf139f4155d78f397e99ae1c4acc.tar.gz
kernel_samsung_smdk4412-f652f6c5b7cfdf139f4155d78f397e99ae1c4acc.tar.bz2
Merge branch 'master' of /pub/scm/linux/kernel/git/jejb/scsi-post-merge-2.6 into for-linus
Diffstat (limited to 'fs/ceph/super.c')
-rw-r--r--fs/ceph/super.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c
index 08b460a..bf6f0f3 100644
--- a/fs/ceph/super.c
+++ b/fs/ceph/super.c
@@ -428,7 +428,8 @@ struct ceph_fs_client *create_fs_client(struct ceph_mount_options *fsopt,
goto fail;
}
fsc->client->extra_mon_dispatch = extra_mon_dispatch;
- fsc->client->supported_features |= CEPH_FEATURE_FLOCK;
+ fsc->client->supported_features |= CEPH_FEATURE_FLOCK |
+ CEPH_FEATURE_DIRLAYOUTHASH;
fsc->client->monc.want_mdsmap = 1;
fsc->mount_options = fsopt;
@@ -443,13 +444,17 @@ struct ceph_fs_client *create_fs_client(struct ceph_mount_options *fsopt,
goto fail_client;
err = -ENOMEM;
- fsc->wb_wq = create_workqueue("ceph-writeback");
+ /*
+ * The number of concurrent works can be high but they don't need
+ * to be processed in parallel, limit concurrency.
+ */
+ fsc->wb_wq = alloc_workqueue("ceph-writeback", 0, 1);
if (fsc->wb_wq == NULL)
goto fail_bdi;
- fsc->pg_inv_wq = create_singlethread_workqueue("ceph-pg-invalid");
+ fsc->pg_inv_wq = alloc_workqueue("ceph-pg-invalid", 0, 1);
if (fsc->pg_inv_wq == NULL)
goto fail_wb_wq;
- fsc->trunc_wq = create_singlethread_workqueue("ceph-trunc");
+ fsc->trunc_wq = alloc_workqueue("ceph-trunc", 0, 1);
if (fsc->trunc_wq == NULL)
goto fail_pg_inv_wq;