Johannes Henninger wrote on 2015/10/27 01:15 +0100:
On 26.10.2015 08:12, Qu Wenruo wrote:
Thanks a lot for your reply!
While remounting the filesystem fixes the issue temporary, it doesn't
take very long for the bug to happen again so it's not really a
workaround I can work with.
I did recompile the kernel using your patches, but unfortunately the
problem still appears.
Thanks,
Johannes
Interesting, just touching file will cause EQUOTA is quite a big
problem.
I'll try to reproduce it with my patchset and see what really caused
the problem.
The problem seems to do with snapshot qgroup hacking.
But I'm not completely sure yet.
BTW, does "sync; btrfs qgroup show -prce" still show excl as 16K?
16K is the correct number with only 6 empty files, just in case.
Thanks,
Qu
I ran my example from the first mail again and managed to write 7 files
this time, "qgroup show" still shows 16kB after sync:
root@t420:/media/extern/snap# btrfs qg limit -e 50M .
root@t420:/media/extern/snap# for file in {1..100}; do touch $file;
sleep 5m; done
touch: cannot touch ‘8’: Disk quota exceeded
^C
root@t420:/media/extern/snap# sync
root@t420:/media/extern/snap# btrfs qgroup show -pcre .
qgroupid rfer excl max_rfer max_excl parent
child
-------- ---- ---- -------- -------- ------
-----
0/5 16.00KiB 16.00KiB none none --- ---
0/257 16.00KiB 16.00KiB none none --- ---
0/258 16.00KiB 16.00KiB none 50.00MiB --- ---
root@t420:/media/extern/snap# btrfs fi sync .
FSSync '.'
root@t420:/media/extern/snap# btrfs qgroup show -pcre .
qgroupid rfer excl max_rfer max_excl parent
child
-------- ---- ---- -------- -------- ------
-----
0/5 16.00KiB 16.00KiB none none --- ---
0/257 16.00KiB 16.00KiB none none --- ---
0/258 16.00KiB 16.00KiB none 50.00MiB --- ---
By the way, I don't if its relevant but the problem is not limited to
exclusive quotas, but also happens when setting a "referenced" limit
(qgroup limit without "-e").
Thanks,
Johannes
The bug is located, and turns out to be quite a stupid problem caused
by myself.
I just forgot to include a cleanup patch during rebase!!!! AGAIN!!!
You can apply the following patch to resolve it:
[PATCH 3/3] btrfs: qgroup: Fix a rebase bug which will cause qgroup
double free
Or just apply the whole patchset:
[4.4][PATCH 0/3] btrfs: Qgroup hotfix
At least, with the patchset based on Chris' integration-4.4 branch, it
succeeded in touching all the 100 files in my test box.
Thanks,
Qu
It's working! Thank you so much for fixing this bug, you don't even know
how much this has helped me!
Thanks!
Johannes
--
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
Glad to hear that.
If it's working for you, it would be better to add a 'Tested-by' tag for
the 3rd patch.
Thanks,
Qu
--
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