linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] Qgroup status flag fix and semi-automatic qgroup update on relationship assign
@ 2015-02-27  8:24 Qu Wenruo
  2015-02-27  8:24 ` [PATCH 1/7] btrfs: Check qgroup level in kernel qgroup assign Qu Wenruo
                   ` (6 more replies)
  0 siblings, 7 replies; 16+ messages in thread
From: Qu Wenruo @ 2015-02-27  8:24 UTC (permalink / raw)
  To: linux-btrfs

This patchset will do the following bug fix mostly on incorrect flags.
1) INCONSISTENT flag never cleared bug
2) RESCANNING flag never cleared unless umount.

Also add 2 qgroup level related checks:
1) Kernel check on qgroup assign to ensure dst's level is higher than
src.
2) Restrict qgroup id under 1<<48, to ensure qgroup id won't have level
higher than 1.

At last, add semi-automatic qgroup info update on relationship assign.
The automatic part only happens when all extents of src are exclusive.
If not, it will set INCONSISTENT flag and return >0 to info user land
progs to do rescan.

Dongsheng Yang (1):
  btrfs: qgroup: clear STATUS_FLAG_ON in disabling quota.

Qu Wenruo (6):
  btrfs: Check qgroup level in kernel qgroup assign.
  btrfs: Don't allow subvolid >= (1 << BTRFS_QGROUP_LEVEL_SHIFT) to be  
      created
  btrfs: qgroup: Fix dead judgement on qgroup_rescan_leaf() return
    value.
  btrfs: Update btrfs qgroup status item when rescan is done.
  btrfs: quota: Automatically update related qgroups or mark
    INCONSISTENT     flags when assigning/deleting a qgroup relations.
  btrfs: quota: Update quota tree after qgroup relationship change.

 fs/btrfs/ctree.h  |   9 ++-
 fs/btrfs/ioctl.c  |  12 ++++
 fs/btrfs/qgroup.c | 203 ++++++++++++++++++++++++++++++++++++++++--------------
 3 files changed, 170 insertions(+), 54 deletions(-)

-- 
2.3.0


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2015-03-19 17:49 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-27  8:24 [PATCH 0/7] Qgroup status flag fix and semi-automatic qgroup update on relationship assign Qu Wenruo
2015-02-27  8:24 ` [PATCH 1/7] btrfs: Check qgroup level in kernel qgroup assign Qu Wenruo
2015-03-02 21:49   ` Josef Bacik
2015-03-19 17:49   ` David Sterba
2015-02-27  8:24 ` [PATCH 2/7] btrfs: Don't allow subvolid >= (1 << BTRFS_QGROUP_LEVEL_SHIFT) to be created Qu Wenruo
2015-03-02 21:50   ` Josef Bacik
2015-02-27  8:24 ` [PATCH 3/7] btrfs: qgroup: Fix dead judgement on qgroup_rescan_leaf() return value Qu Wenruo
2015-03-02 21:52   ` Josef Bacik
2015-02-27  8:24 ` [PATCH 4/7] btrfs: Update btrfs qgroup status item when rescan is done Qu Wenruo
2015-03-02 21:54   ` Josef Bacik
2015-02-27  8:24 ` [PATCH 5/7] btrfs: qgroup: clear STATUS_FLAG_ON in disabling quota Qu Wenruo
2015-03-02 21:55   ` Josef Bacik
2015-02-27  8:24 ` [PATCH 6/7] btrfs: quota: Automatically update related qgroups or mark INCONSISTENT flags when assigning/deleting a qgroup relations Qu Wenruo
2015-03-02 22:02   ` Josef Bacik
2015-02-27  8:24 ` [PATCH 7/7] btrfs: quota: Update quota tree after qgroup relationship change Qu Wenruo
2015-03-02 22:03   ` Josef Bacik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).