diff options
author | Aditya Kali <adityakali@google.com> | 2011-07-20 11:40:06 -0700 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2011-08-31 16:31:13 -0400 |
commit | 624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0 (patch) | |
tree | d4d5748fc2baea48a1cb6a9ad0e66300cdcc3b3f /e2fsck/pass3.c | |
parent | f239fefc14226f655477179801c734749a04d4b4 (diff) | |
download | e2fsprogs-624e4a6466dba9889f5f80dc168f2bb7c2a3f5d0.tar.gz |
e2fsck: add support for checking the built-in quota files
This patch adds support for doing quota accounting during full
e2fsck scan if the 'quota' feature was set on the superblock.
If user-visible quota inodes are in use, they will be hidden
and converted to the reserved quota inodes.
Signed-off-by: Aditya Kali <adityakali@google.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat (limited to 'e2fsck/pass3.c')
-rw-r--r-- | e2fsck/pass3.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/e2fsck/pass3.c b/e2fsck/pass3.c index c0671643..e3d2ef70 100644 --- a/e2fsck/pass3.c +++ b/e2fsck/pass3.c @@ -488,6 +488,8 @@ ext2_ino_t e2fsck_get_lost_and_found(e2fsck_t ctx, int fix) ext2fs_icount_store(ctx->inode_count, ino, 2); ext2fs_icount_store(ctx->inode_link_info, ino, 2); ctx->lost_and_found = ino; + quota_data_add(ctx->qctx, &inode, ino, fs->blocksize); + quota_data_inodes(ctx->qctx, &inode, ino, +1); #if 0 printf("/lost+found created; inode #%lu\n", ino); #endif @@ -790,6 +792,7 @@ errcode_t e2fsck_expand_directory(e2fsck_t ctx, ext2_ino_t dir, inode.i_size = (es.last_block + 1) * fs->blocksize; ext2fs_iblk_add_blocks(fs, &inode, es.newblocks); + quota_data_add(ctx->qctx, &inode, dir, es.newblocks * fs->blocksize); e2fsck_write_inode(ctx, dir, &inode, "expand_directory"); |