On Fri, Jul 01, 2016 at 03:05:41PM +0800, Wang Xiaoguang wrote: > hello, > > On 07/01/2016 10:55 AM, Eryu Guan wrote: > > On Fri, Jul 01, 2016 at 10:28:28AM +0800, Wang Xiaoguang wrote: > > > hello, > > > > > > On 06/30/2016 09:52 PM, Eryu Guan wrote: > > > > On Thu, Jun 30, 2016 at 04:25:49PM +0800, Wang Xiaoguang wrote: > > > > > In btrfs, when truncate operation fails for enospc reason, file may still > > > > > have some disk blocks, but it will fail to update filesize accordingly. > > > > > > > > > > Kernel commit c0d2f61 has fixed this bug for btrfs: > > > > > btrfs: fix disk_i_size update bug when ftruncate() fails > > > > > > > > > > Signed-off-by: Wang Xiaoguang <wangxg.fnst@xxxxxxxxxxxxxx> > > > > > --- > > > > > v2: move this test to generic test and add comments why testcase > > > > > use reflink. > > > > Thanks for the updated version. Did it fail for you when testing on > > > > unpatched kernel? I ran the test more than 10 times on 4.6 kernel (which > > > > doesn't have the fix) and all passed, as well as RHEL7 kernel. > > > > > > > > Can you please confirm? > > > I tested this case in v4.6-rc7-162-g415b35a and it failed as expected, > > > but I used the newest version btrfs-progs. > > > In RHEL7.2ga, its btrfs-progs version is btrfs-progs-3.19.1-1.el7.x86_64, > > > which is somewhat old. For small fs, it'll enable mixed mode for data and > > > metadata default, so the reflink operation in this test case does not > > > consume > > > enough metadata, truncate operation can still succeed, then test will always > > > pass. I can create a big fs to have test, but then this fs will have more > > > metadata, which then need more reflink operations to consume metadata and > > > increase the test time greatly. > > > > > > In mkfs.btrfs manpage, there is such description: > > > versions up to 4.2.x forced the mixed mode for devices smaller > > > than 1GiB. This has been removed in 4.3+ as it caused some > > > usability issues. > > I also tested on 4.6 kernel with v4.6 btrfs-progs, it passed 10+ times > > without a fail. I was testing on a 4vcpu kvm guest with 8G memory, > > TEST_DEV and SCRATCH_DEV are all 15G in size, not sure if that matters. > Sorry, I run this test case in v4.6, it still failed. > Would you please give me your kernel version and btrfs-progs version, > like this format: v4.6-rc7-162-g415b35a, which is generated by "describe", > then I can do some further investigation, thanks. kernel v4.6 released version (tag v4.6), btrfs-progs "b9b0210 Btrfs progs v4.6". Thanks for looking into this! Eryu -- To unsubscribe from this list: send the line "unsubscribe fstests" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html