Hi Chris,
I' ve put my efforts in btrfs quota for a period of time. and i send a
bunch of patches
about btrfs quota.
If you pull Jan's qgroup rescan patches, i'd like that you pull my this
patch firstly:
https://patchwork.kernel.org/patch/2402871/
Jan's group rescan patch relies on this patch.
Besides, i make a patch-set to fix a btrfs quota's race condition:
https://patchwork.kernel.org/patch/2402901/
https://patchwork.kernel.org/patch/2402911/
https://patchwork.kernel.org/patch/2402881/
https://patchwork.kernel.org/patch/2402891/
https://patchwork.kernel.org/patch/2402921/
Some bug fixes about btrfs quota:
https://patchwork.kernel.org/patch/2356111/
https://patchwork.kernel.org/patch/2402941/
https://patchwork.kernel.org/patch/2407571/
https://patchwork.kernel.org/patch/2420731/
https://patchwork.kernel.org/patch/2426721/
https://patchwork.kernel.org/patch/2445051/
https://patchwork.kernel.org/patch/2368341/
https://patchwork.kernel.org/patch/2368291/
This patch improve performances of ulist that btrfs quota ,send
relies on this:
https://patchwork.kernel.org/patch/2435001/
some minor cleanups:
https://patchwork.kernel.org/patch/2441951/
https://patchwork.kernel.org/patch/2444521/
https://patchwork.kernel.org/patch/2448741/
These patches are mainly related to btrfs quota. and i have sent them
to btrfs list reviewed by the people for a period of time. Thanks to Miao
Xie's help
to my efforts in btrfs. And Arne Jasen, Jan schdmit , David really help review
my patch, many thanks.
Every efforts i have made is to make btrfs quota works well. After you pull
my patches and Jan's qgroup rescan patch, i will have a deep look at codes, and
test Jan's patch.
I am really newbie, and usually makes a lot of mistakes.. forgive me if i do
something wrong….
Thanks,
Wang
>
> Signed-off-by: Jan Schmidt <[email protected]>
> ---
> fs/btrfs/qgroup.c | 10 ++++++++++
> 1 files changed, 10 insertions(+), 0 deletions(-)
>
> diff --git a/fs/btrfs/qgroup.c b/fs/btrfs/qgroup.c
> index bb081b5..0ea2c3e 100644
> --- a/fs/btrfs/qgroup.c
> +++ b/fs/btrfs/qgroup.c
> @@ -1356,10 +1356,14 @@ int btrfs_run_qgroups(struct btrfs_trans_handle
> *trans,
> {
> struct btrfs_root *quota_root = fs_info->quota_root;
> int ret = 0;
> + int start_rescan_worker = 0;
>
> if (!quota_root)
> goto out;
>
> + if (!fs_info->quota_enabled && fs_info->pending_quota_state)
> + start_rescan_worker = 1;
> +
> fs_info->quota_enabled = fs_info->pending_quota_state;
>
> spin_lock(&fs_info->qgroup_lock);
> @@ -1385,6 +1389,12 @@ int btrfs_run_qgroups(struct btrfs_trans_handle *trans,
> if (ret)
> fs_info->qgroup_flags |= BTRFS_QGROUP_STATUS_FLAG_INCONSISTENT;
>
> + if (start_rescan_worker) {
> + ret = btrfs_qgroup_rescan(fs_info);
> + if (ret)
> + pr_err("btrfs: start rescan quota failed: %d\n", ret);
> + }
> +
> out:
>
> return ret;
> --
> 1.7.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html