Hi, The following 3 patches fix a regression introduced in Linux 4.2 where btrfs_drop_snapshot() wasn't updating qgroups, resulting in them going bad.
The original e-mail pointing this out is below: http://www.spinics.net/lists/linux-btrfs/msg46093.html The first patch is from Josef and fix bugs in our counting of roots (which is critical for qgroups to work correctly). It was previously sent to the list: http://www.spinics.net/lists/linux-btrfs/msg47035.html Truth be told, most of the time fixing this was spent figuring out that and another issue (which has also been fixed). Once I realized I was seeing a bug and we fixed it correctly, my drop snapshot patch got dramatically smaller. I also re-added some of the tracing in qgroup.c that we recently lost. It is again possible to debug qgroup operations on a live system, allowing us to find issues like the two above by narrowing down our operations and manually walking through them via cat sys/debug/tracing. The entire patch series can be tested in xfstests test btrfs/104. Thanks, --Mark Changes from V1, thanks to Qu for his comments: - lock around call to btrfs_qgroup_insert_dirty_extent() - check whether qgroups are enabled in account_leaf_items() -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html