Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 206319
b: refs/heads/master
c: ca0e05e
h: refs/heads/master
i:
  206317: 67acc22
  206315: 64189ee
  206311: bce9136
  206303: dc639c1
v: v3
  • Loading branch information
Dmitry Monakhov authored and Theodore Ts'o committed Aug 1, 2010
1 parent 4f231aa commit 498719f
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 437f88cc031ffe7f37f3e705367f4fe1f4be8b0f
refs/heads/master: ca0e05e4b15193aeba72b995e90de990db7f8304
15 changes: 14 additions & 1 deletion trunk/fs/ext4/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -1118,6 +1118,7 @@ static int ext4_mark_dquot_dirty(struct dquot *dquot);
static int ext4_write_info(struct super_block *sb, int type);
static int ext4_quota_on(struct super_block *sb, int type, int format_id,
char *path);
static int ext4_quota_off(struct super_block *sb, int type);
static int ext4_quota_on_mount(struct super_block *sb, int type);
static ssize_t ext4_quota_read(struct super_block *sb, int type, char *data,
size_t len, loff_t off);
Expand All @@ -1139,7 +1140,7 @@ static const struct dquot_operations ext4_quota_operations = {

static const struct quotactl_ops ext4_qctl_operations = {
.quota_on = ext4_quota_on,
.quota_off = dquot_quota_off,
.quota_off = ext4_quota_off,
.quota_sync = dquot_quota_sync,
.get_info = dquot_get_dqinfo,
.set_info = dquot_set_dqinfo,
Expand Down Expand Up @@ -4098,6 +4099,18 @@ static int ext4_quota_on(struct super_block *sb, int type, int format_id,
return err;
}

static int ext4_quota_off(struct super_block *sb, int type)
{
/* Force all delayed allocation blocks to be allocated */
if (test_opt(sb, DELALLOC)) {
down_read(&sb->s_umount);
sync_filesystem(sb);
up_read(&sb->s_umount);
}

return dquot_quota_off(sb, type);
}

/* Read data from quotafile - avoid pagecache and such because we cannot afford
* acquiring the locks... As quota files are never truncated and quota code
* itself serializes the operations (and noone else should touch the files)
Expand Down

0 comments on commit 498719f

Please sign in to comment.