f2fs: support plain user/group quota
authorChao Yu <yuchao0@huawei.com>
Sat, 8 Jul 2017 16:13:07 +0000 (00:13 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Sun, 9 Jul 2017 06:12:27 +0000 (23:12 -0700)
commit0abd675e97e60d40e61d59532f8118b0e439034e
tree4aac496af2e665936486dd067b71a0087e091685
parentd29460e5cfc9bc2241886f9f60d0650ad745cf10
f2fs: support plain user/group quota

This patch adds to support plain user/group quota.

Change Note by Jaegeuk Kim.

- Use f2fs page cache for quota files in order to consider garbage collection.
  so, quota files are not tolerable for sudden power-cuts, so user needs to do
  quotacheck.

- setattr() calls dquot_transfer which will transfer inode->i_blocks.
  We can't reclaim that during f2fs_evict_inode(). So, we need to count
  node blocks as well in order to match i_blocks with dquot's space.

  Note that, Chao wrote a patch to count inode->i_blocks without inode block.
  (f2fs: don't count inode block in in-memory inode.i_blocks)

- in f2fs_remount, we need to make RW in prior to dquot_resume.

- handle fault_injection case during f2fs_quota_off_umount

- TODO: Project quota

Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Documentation/filesystems/f2fs.txt
fs/f2fs/data.c
fs/f2fs/f2fs.h
fs/f2fs/file.c
fs/f2fs/inode.c
fs/f2fs/namei.c
fs/f2fs/node.c
fs/f2fs/super.c