On 07/18/2014 04:45 PM, Satoru Takeuchi wrote:
> Hi Josef, Chris,
>
> I found "Quota Ignored On write" problem still exist with 3.16-rc5,
> which Kevin reported before.
>
> Kevin's report:
> https://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg35292.html
>
> The result of bisect:
> https://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg35304.html
I guess this is because Josef's patch delayed qgroup accounting, it will
cause @refer and @excl updating very late...

The patch maybe optimize to merge some delayed refs(for example), but
it updates qgroup accounting when commiting transaction which will be
very late,
we may have accumulated many data..

Thanks,
Wang
>
>> I bisected and found the bad commit is the following patch.
>>
>> ===============================================================================
>> commit fcebe4562dec83b3f8d3088d77584727b09130b2
>> Author: Josef Bacik <jba...@fb.com>
>> Date:   Tue May 13 17:30:47 2014 -0700
>>
>>     Btrfs: rework qgroup accounting
>> ===============================================================================
>>
>> Josef, please take a look at this patch.
> Reproducer:
> https://www.mail-archive.com/linux-btrfs@vger.kernel.org/msg35299.html
>
> Could you tell me the progress of fixing this bug?
> In addition, could you fix it by 3.16?
>
> command log:
> ===============================================================================
> # ./test.sh
> + uname -a
> Linux luna.soft.fujitsu.com 3.16.0-rc5 #2 SMP Tue Jul 15 13:39:46 JST 2014 
> x86_64 x86_64 x86_64 GNU/Linux
> + df -T /test7
> Filesystem     Type  1K-blocks  Used Available Use% Mounted on
> /dev/sdc7      btrfs  29296640  1536  27169536   1% /test7
> + btrfs quota ena /test7
> + cd /test7
> + btrfs sub cre test
> Create subvolume './test'
> + btrfs sub l -a /test7
> ID 270 gen 66 top level 5 path test
> + btrfs qg lim 1G test                          # limit test subvol to 1GB
> + btrfs qg show -pcre /test7
> qgroupid rfer  excl  max_rfer   max_excl parent  child
> -------- ----  ----  --------   -------- ------  -----
> 0/5      16384 16384 0          0        ---     ---
> 0/270    16384 16384 1073741824 0        ---     ---
> + dd if=/dev/zero of=test/file0 bs=1M count=2000
> 2000+0 records in
> 2000+0 records out
> 2097152000 bytes (2.1 GB) copied, 9.67876 s, 217 MB/s   # write 2GB. It's a 
> bug!
> + sync
> + ls -lisaR /test7
> /test7:
> total 20
> 256 16 drwxr-xr-x   1 root root    8 Jul 18 15:12 .
>   2  4 drwxr-xr-x. 43 root root 4096 Jul 16 08:34 ..
> 256  0 drwxr-xr-x   1 root root   10 Jul 18 15:17 test
>
> /test7/test:
> total 2048016
> 256       0 drwxr-xr-x 1 root root         10 Jul 18 15:17 .
> 256      16 drwxr-xr-x 1 root root          8 Jul 18 15:12 ..
> 257 2048000 -rw-r--r-- 1 root root 2097152000 Jul 18 15:17 file0
> + btrfs qg show -pcre /test7
> qgroupid rfer       excl       max_rfer   max_excl parent  child
> -------- ----       ----       --------   -------- ------  -----
> 0/5      16384      16384      0          0        ---     ---
> 0/270    2097168384 2097168384 1073741824 0        ---     ---
> + btrfs quota dis /test7
> + btrfs sub del test
> Transaction commit: none (default)
> Delete subvolume '/test7/test'
> + set +x
> #
> ===============================================================================
>
>   NOTE:
>   The reproducer here (./test.sh) is a bit different from above-mentioned
>   one because of some reason.
>
> Thanks,
> Satoru
>
> --
> 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
> .
>

--
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

Reply via email to