diff options
author | Mark Fasheh <mfasheh@suse.com> | 2008-10-20 09:36:47 -0400 |
---|---|---|
committer | Mark Fasheh <mfasheh@suse.com> | 2009-01-05 11:40:24 -0500 |
commit | 171bf93ce11f4c9929fdce6ce63df8da2f3c4475 (patch) | |
tree | a6f29032a86bcc2b0e9971c85ec8fab22b3300ef /fs/ocfs2/quota_local.c | |
parent | a90714c150e3ce677c57a9dac3ab1ec342c75a95 (diff) |
ocfs2: Periodic quota syncing
This patch creates a work queue for periodic syncing of locally cached quota
information to the global quota files. We constantly queue a delayed work
item, to get the periodic behavior.
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Acked-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ocfs2/quota_local.c')
-rw-r--r-- | fs/ocfs2/quota_local.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ocfs2/quota_local.c b/fs/ocfs2/quota_local.c index 55c3f2f98dcd..40e82b483136 100644 --- a/fs/ocfs2/quota_local.c +++ b/fs/ocfs2/quota_local.c | |||
@@ -368,6 +368,10 @@ static int ocfs2_local_free_info(struct super_block *sb, int type) | |||
368 | int mark_clean = 1, len; | 368 | int mark_clean = 1, len; |
369 | int status; | 369 | int status; |
370 | 370 | ||
371 | /* At this point we know there are no more dquots and thus | ||
372 | * even if there's some sync in the pdflush queue, it won't | ||
373 | * find any dquots and return without doing anything */ | ||
374 | cancel_delayed_work_sync(&oinfo->dqi_sync_work); | ||
371 | iput(oinfo->dqi_gqinode); | 375 | iput(oinfo->dqi_gqinode); |
372 | ocfs2_simple_drop_lockres(OCFS2_SB(sb), &oinfo->dqi_gqlock); | 376 | ocfs2_simple_drop_lockres(OCFS2_SB(sb), &oinfo->dqi_gqlock); |
373 | ocfs2_lock_res_free(&oinfo->dqi_gqlock); | 377 | ocfs2_lock_res_free(&oinfo->dqi_gqlock); |