Message ID | 512DB284.1090806@gmail.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On Wed, Feb 27, 2013 at 03:15:16PM +0800, Wang Sheng-Hui wrote: > Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by > -x option of filefrag, and will fail with > 'FIBMAP: Invalid argument' > for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with > 'FIEMAP failed with unsupported flags 2' > Remove the '-x' option. > > Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> I can see that this changes what gets dumped into the $seq.full file, but it seems to me that also changes the extent list returned to the checking functions. So either the test previously worked and now it fails with this change, or the test never worked and now it does, or perhaps something else? IOWs, I can't tell why you want to change this from the patch description, hence I don't know if the original behaviour was intentional or not. Can you say describe what the overall effect of the change is in the commit description? Cheers, Dave.
On 2/27/13 5:04 PM, Dave Chinner wrote: > On Wed, Feb 27, 2013 at 03:15:16PM +0800, Wang Sheng-Hui wrote: >> Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by >> -x option of filefrag, and will fail with >> 'FIBMAP: Invalid argument' >> for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with >> 'FIEMAP failed with unsupported flags 2' >> Remove the '-x' option. >> >> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> > > I can see that this changes what gets dumped into the $seq.full > file, but it seems to me that also changes the extent list returned > to the checking functions. So either the test previously worked and > now it fails with this change, or the test never worked and now it > does, or perhaps something else? Agreed - I wondered as well. > IOWs, I can't tell why you want to change this from the patch > description, hence I don't know if the original behaviour was > intentional or not. Can you say describe what the overall effect of > the change is in the commit description? It looks like -x is only recently rejected: commit 05dadc09f52ad5a631da1aa8767c5b80e121f0c4 Author: Tsutomu Itoh <t-itoh@jp.fujitsu.com> Date: Thu Nov 29 05:08:26 2012 +0000 Btrfs: add fiemap's flag check +#define BTRFS_FIEMAP_FLAGS (FIEMAP_FLAG_SYNC) + ret = fiemap_check_flags(fieinfo, BTRFS_FIEMAP_FLAGS); -Eric > Cheers, > > Dave. > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 2013?02?28? 07:04, Dave Chinner wrote: > On Wed, Feb 27, 2013 at 03:15:16PM +0800, Wang Sheng-Hui wrote: >> Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by >> -x option of filefrag, and will fail with >> 'FIBMAP: Invalid argument' >> for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with >> 'FIEMAP failed with unsupported flags 2' >> Remove the '-x' option. >> >> Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> > > I can see that this changes what gets dumped into the $seq.full > file, but it seems to me that also changes the extent list returned > to the checking functions. So either the test previously worked and > now it fails with this change, or the test never worked and now it > does, or perhaps something else? > > IOWs, I can't tell why you want to change this from the patch > description, hence I don't know if the original behaviour was > intentional or not. Can you say describe what the overall effect of > the change is in the commit description? Hi Dave, I run xfstests for btrfs against SLES11SP2, not upstream kernel. In the seq.full, I can get the messages 'FIEMAP failed with unsupported flags 2' Then I found that the test will run 'filefrag -vx' on btrfs, and '-v' will run FIEMAP_FLAG_XATTR, which is not supported by btrfs yet, at least in 3.8 kernel. Without the patch, I failed the testcase and got: ============================================= 276 8s ... - output mismatch (see 276.out.bad) --- 276.out 2013-02-25 19:08:58.000000000 -0600 +++ 276.out.bad 2013-02-27 17:59:48.000000000 -0600 @@ -1,4 +1,867 @@ QA output created by 276 *** test backref walking +FIBMAP: Invalid argument +FIBMAP: Invalid argument +FIBMAP: Invalid argument +FIBMAP: Invalid argument +FIBMAP: Invalid argument ... (Run 'diff -u 276.out 276.out.bad' to see the entire diff) Ran: 276 Failures: 276 Failed 1 of 1 tests In the 276.full, I got something like: ============================================= # filefrag -vx /mnt/scratch/snap1/p0/d4/d21/d4a/f58 Filesystem type is: 9123683e File size of /mnt/scratch/snap1/p0/d4/d21/d4a/f58 is 2125615 (33 blocks, blocksize 65536) FIEMAP failed with unsupported flags 2 With the patch, I can pass the testcase: ============================================= 276 8s ... 7s Ran: 276 Passed all 1 tests > > Cheers, > > Dave. > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Feb 28, 2013 at 08:02:52AM +0800, Wang Sheng-Hui wrote: > On 2013?02?28? 07:04, Dave Chinner wrote: > >On Wed, Feb 27, 2013 at 03:15:16PM +0800, Wang Sheng-Hui wrote: > >>Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by > >>-x option of filefrag, and will fail with > >> 'FIBMAP: Invalid argument' > >>for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with > >> 'FIEMAP failed with unsupported flags 2' > >>Remove the '-x' option. > >> > >>Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> > > > >I can see that this changes what gets dumped into the $seq.full > >file, but it seems to me that also changes the extent list returned > >to the checking functions. So either the test previously worked and > >now it fails with this change, or the test never worked and now it > >does, or perhaps something else? > > > >IOWs, I can't tell why you want to change this from the patch > >description, hence I don't know if the original behaviour was > >intentional or not. Can you say describe what the overall effect of > >the change is in the commit description? > > Hi Dave, > > I run xfstests for btrfs against SLES11SP2, not upstream kernel. > In the seq.full, I can get the messages > 'FIEMAP failed with unsupported flags 2' > > Then I found that the test will run 'filefrag -vx' on btrfs, and > '-v' will run FIEMAP_FLAG_XATTR, which is not supported by btrfs > yet, at least in 3.8 kernel. Sure, I understand that. I'm not asking about how it fails - that much is obvious. What I am asking is: - did it ever work? - if it did, why did it start failing? - how long has it been broken for? > With the patch, I can pass the testcase: > ============================================= > 276 8s ... 7s > Ran: 276 > Passed all 1 tests Great, but why did it break in the first place? That's the information that needs to be in the commit message. Indeed, Eric has pointed out to us *exactly* the information that shoul dbe in the commit message. i.e. a description along the lines of: "Commit 05dadc0 ("Btrfs: add fiemap's flag check") added validity checks to the fiemap flags and hence invalid flags are now being rejected. Test 276 passes an invalid fiemap flag to btrfs, and so that test fails since this commit was added." That tells us exactly why the test failed, why the change is necessary, and how long the test has been broken for. Seen another way, it makes me wonder how often anyone runs xfstests on a btrfs dev tree or regression tests their own changes. Cheers, Dave.
This patch has been committed. --Rich commit eba3a5206cd7f8df73d6e6dbf2bb0afca677fca8 Author: Wang Sheng-Hui <shhuiw@gmail.com> Date: Thu Feb 28 02:05:56 2013 +0000 xfstests 276: fix error 'FIBMAP: Invalid argument' Commit 05dadc0 ("Btrfs: add fiemap's flag check") added validity checks to the fiemap flags and hence invalid flags are now being rejected. Test 276 passes an invalid fiemap flag to btrfs, and so that test fails since this commit was added. Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by -x option of filefrag, and will fail with 'FIBMAP: Invalid argument' for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with 'FIEMAP failed with unsupported flags 2' Remove the '-x' option. -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
HI, This issue still exists when xfstests is run on debian although xfstests has contained this patch. root@debian-i386:/home/zwu/xfstests# git describe linux-v3.8-122-gdc75401 root@debian-i386:/home/zwu/xfstests# uname -a Linux debian-i386 3.10.0-rc2+ #3 SMP Sun May 26 14:04:13 CST 2013 x86_64 GNU/Linux root@debian-i386:/home/zwu/xfstests# - output mismatch (see /home/zwu/xfstests/results/btrfs/276.out.bad) --- tests/btrfs/276.out 2013-05-25 15:09:01.000000000 +0000 +++ /home/zwu/xfstests/results/btrfs/276.out.bad 2013-05-26 09:31:49.962876905 +0000 @@ -1,3 +1,32393 @@ QA output created by 276 *** test backref walking +FIBMAP: Invalid argument +FIBMAP: Invalid argument +FIBMAP: Invalid argument +FIBMAP: Invalid argument +FIBMAP: Invalid argument ... (Run 'diff -u tests/btrfs/276.out /home/zwu/xfstests/results/btrfs/276.out.bad' to see the entire diff) [ 3877.215268] device fsid 8367602a-14fa-49eb-aff0-44da1faa3b45 devid 1 transid 239 /dev/vdb [ 3877.218417] btrfs: disk space caching is enabled Ran: btrfs/276 Failures: btrfs/276 Failed 1 of 1 tests On Wed, Mar 6, 2013 at 2:43 AM, Rich Johnston <rjohnston@sgi.com> wrote: > This patch has been committed. > > --Rich > > commit eba3a5206cd7f8df73d6e6dbf2bb0afca677fca8 > Author: Wang Sheng-Hui <shhuiw@gmail.com> > Date: Thu Feb 28 02:05:56 2013 +0000 > > xfstests 276: fix error 'FIBMAP: Invalid argument' > > > Commit 05dadc0 ("Btrfs: add fiemap's flag check") added validity > checks to the fiemap flags and hence invalid flags are now being > rejected. Test 276 passes an invalid fiemap flag to btrfs, and so > that test fails since this commit was added. > > Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by -x option > of filefrag, and will fail with > 'FIBMAP: Invalid argument' > for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with > 'FIEMAP failed with unsupported flags 2' > Remove the '-x' option. > > _______________________________________________ > xfs mailing list > xfs@oss.sgi.com > http://oss.sgi.com/mailman/listinfo/xfs
On 5/26/13 4:35 AM, Zhi Yong Wu wrote: > HI, > > This issue still exists when xfstests is run on debian although > xfstests has contained this patch. "this issue" must be different, then; same error ("Invalid argument") but it can no longer be due to the -x option to filefrag. There must be some other root cause. Needs investigation on the btrfs side. IOWs, this looks like it could be a regression in btrfs? -Eric > root@debian-i386:/home/zwu/xfstests# git describe > linux-v3.8-122-gdc75401 > root@debian-i386:/home/zwu/xfstests# uname -a > Linux debian-i386 3.10.0-rc2+ #3 SMP Sun May 26 14:04:13 CST 2013 > x86_64 GNU/Linux > root@debian-i386:/home/zwu/xfstests# > > - output mismatch (see /home/zwu/xfstests/results/btrfs/276.out.bad) > --- tests/btrfs/276.out 2013-05-25 15:09:01.000000000 +0000 > +++ /home/zwu/xfstests/results/btrfs/276.out.bad 2013-05-26 > 09:31:49.962876905 +0000 > @@ -1,3 +1,32393 @@ > QA output created by 276 > *** test backref walking > +FIBMAP: Invalid argument > +FIBMAP: Invalid argument > +FIBMAP: Invalid argument > +FIBMAP: Invalid argument > +FIBMAP: Invalid argument > ... > (Run 'diff -u tests/btrfs/276.out > /home/zwu/xfstests/results/btrfs/276.out.bad' to see the entire diff) > [ 3877.215268] device fsid 8367602a-14fa-49eb-aff0-44da1faa3b45 devid > 1 transid 239 /dev/vdb > [ 3877.218417] btrfs: disk space caching is enabled > Ran: btrfs/276 > Failures: btrfs/276 > Failed 1 of 1 tests > > On Wed, Mar 6, 2013 at 2:43 AM, Rich Johnston <rjohnston@sgi.com> wrote: >> This patch has been committed. >> >> --Rich >> >> commit eba3a5206cd7f8df73d6e6dbf2bb0afca677fca8 >> Author: Wang Sheng-Hui <shhuiw@gmail.com> >> Date: Thu Feb 28 02:05:56 2013 +0000 >> >> xfstests 276: fix error 'FIBMAP: Invalid argument' >> >> >> Commit 05dadc0 ("Btrfs: add fiemap's flag check") added validity >> checks to the fiemap flags and hence invalid flags are now being >> rejected. Test 276 passes an invalid fiemap flag to btrfs, and so >> that test fails since this commit was added. >> >> Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by -x option >> of filefrag, and will fail with >> 'FIBMAP: Invalid argument' >> for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with >> 'FIEMAP failed with unsupported flags 2' >> Remove the '-x' option. >> >> _______________________________________________ >> xfs mailing list >> xfs@oss.sgi.com >> http://oss.sgi.com/mailman/listinfo/xfs > > > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/276 b/276 index 082f943..f2b17c9 100755 --- a/276 +++ b/276 @@ -75,7 +75,7 @@ _filter_extents() _check_file_extents() { - cmd="filefrag -vx $1" + cmd="filefrag -v $1" echo "# $cmd" >> $seq.full out=`$cmd | _filter_extents` if [ -z "$out" ]; then
Btrfs doesn't support FIEMAP_FLAG_XATTR, which is enabled by -x option of filefrag, and will fail with 'FIBMAP: Invalid argument' for 'filefrag -vx'. 'filefrag -vx' fails on btrfs with 'FIEMAP failed with unsupported flags 2' Remove the '-x' option. Signed-off-by: Wang Sheng-Hui <shhuiw@gmail.com> --- 276 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)