diff options
author | Tejun Heo <tj@kernel.org> | 2011-01-03 08:49:45 -0500 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2011-01-12 18:15:14 -0500 |
commit | 01e6acc4ea4c284c44bfb3d46c76f4ae580c6435 (patch) | |
tree | d5b5c2c82827eae7f23ac6141feb4adfbb781920 /fs/ceph | |
parent | b0aee3516d84c05240065a53f238ba7a718f56b9 (diff) |
ceph: fsc->*_wq's aren't used in memory reclaim path
fsc->*_wq's aren't depended upon during memory reclaim. Convert to
alloc_workqueue() w/o WQ_MEM_RECLAIM.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Sage Weil <sage@newdream.net>
Cc: ceph-devel@vger.kernel.org
Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs/ceph')
-rw-r--r-- | fs/ceph/super.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/fs/ceph/super.c b/fs/ceph/super.c index 1417f3f3e246..bf6f0f34082a 100644 --- a/fs/ceph/super.c +++ b/fs/ceph/super.c | |||
@@ -444,13 +444,17 @@ struct ceph_fs_client *create_fs_client(struct ceph_mount_options *fsopt, | |||
444 | goto fail_client; | 444 | goto fail_client; |
445 | 445 | ||
446 | err = -ENOMEM; | 446 | err = -ENOMEM; |
447 | fsc->wb_wq = create_workqueue("ceph-writeback"); | 447 | /* |
448 | * The number of concurrent works can be high but they don't need | ||
449 | * to be processed in parallel, limit concurrency. | ||
450 | */ | ||
451 | fsc->wb_wq = alloc_workqueue("ceph-writeback", 0, 1); | ||
448 | if (fsc->wb_wq == NULL) | 452 | if (fsc->wb_wq == NULL) |
449 | goto fail_bdi; | 453 | goto fail_bdi; |
450 | fsc->pg_inv_wq = create_singlethread_workqueue("ceph-pg-invalid"); | 454 | fsc->pg_inv_wq = alloc_workqueue("ceph-pg-invalid", 0, 1); |
451 | if (fsc->pg_inv_wq == NULL) | 455 | if (fsc->pg_inv_wq == NULL) |
452 | goto fail_wb_wq; | 456 | goto fail_wb_wq; |
453 | fsc->trunc_wq = create_singlethread_workqueue("ceph-trunc"); | 457 | fsc->trunc_wq = alloc_workqueue("ceph-trunc", 0, 1); |
454 | if (fsc->trunc_wq == NULL) | 458 | if (fsc->trunc_wq == NULL) |
455 | goto fail_pg_inv_wq; | 459 | goto fail_pg_inv_wq; |
456 | 460 | ||