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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to