From: "Darrick J. Wong" <djwong@kernel.org>
To: Petr Vorel <pvorel@suse.cz>
Cc: ltp@lists.linux.it, Li Wang <liwang@redhat.com>,
Cyril Hrubis <chrubis@suse.cz>,
Andrea Cervesato <andrea.cervesato@suse.com>,
"Darrick J . Wong" <darrick.wong@oracle.com>,
Amir Goldstein <amir73il@gmail.com>,
Allison Collins <allison.henderson@oracle.com>,
Christoph Hellwig <hch@lst.de>, Gao Xiang <hsiangkao@redhat.com>,
Dave Chinner <dchinner@redhat.com>, Jan Kara <jack@suse.cz>,
linux-xfs@vger.kernel.org, fstests@vger.kernel.org
Subject: Re: [RFC PATCH 1/1] ioctl_ficlone03: Require 5.10 for XFS
Date: Fri, 21 Mar 2025 09:18:46 -0700 [thread overview]
Message-ID: <20250321161846.GM2803749@frogsfrogsfrogs> (raw)
In-Reply-To: <20250321160633.GA177324@pevik>
On Fri, Mar 21, 2025 at 05:06:33PM +0100, Petr Vorel wrote:
> > On Fri, Mar 21, 2025 at 11:03:20AM +0100, Petr Vorel wrote:
> > > Test fails on XFS on kernel older than 5.10:
>
> > > # ./ioctl_ficlone03
> > > ...
> > > tst_test.c:1183: TINFO: Mounting /dev/loop0 to /tmp/LTP_ioc6ARHZ7/mnt fstyp=xfs flags=0
> > > [ 10.122070] XFS (loop0): Superblock has unknown incompatible features (0x8) enabled.
>
> > 0x8 is XFS_SB_FEAT_INCOMPAT_BIGTIME, maybe you need to format with a set
> > of filesystem features compatible with 5.10?
>
> > # mkfs.xfs -c options=/usr/share/xfsprogs/mkfs/lts_5.10.conf /dev/sda1
>
> Yes, XFS_SB_FEAT_INCOMPAT_BIGTIME is what is missing for the test. Device is
> formatted with: -m reflink=1 (I'm sorry to not posting this before):
You could remove reflink=1 from the test specification, reflink has been
on by default for quite a while now...
>
> tst_test.c:1170: TINFO: Formatting /dev/loop0 with xfs opts='-m reflink=1' extra opts=''
>
> I thought it would imply XFS_SB_FEAT_INCOMPAT_BIGTIME, but when I tried to remove it
> it did not help:
>
> tst_test.c:1909: TINFO: Tested kernel: 5.0.21-00005-gb6c47615d7bf #211 SMP Fri Mar 21 12:23:18 CET 2025 x86_64
> ...
> tst_test.c:1833: TINFO: === Testing on xfs ===
> tst_cmd.c:281: TINFO: Parsing mkfs.xfs version
> tst_test.c:1170: TINFO: Formatting /dev/loop0 with xfs opts='' extra opts=''
> tst_test.c:1183: TINFO: Mounting /dev[ 75.418676] XFS (loop0): Superblock has unknown incompatible features (0x8) enabled.
> /loop0 to /tmp/L[ 75.419683] XFS (loop0): Filesystem cannot be safely mounted by this kernel.
> TP_iocO8VAIk/mnt[ 75.420629] XFS (loop0): SB validate failed with error -22.
> fstyp=xfs flags=0
> tst_test.c:1183: TBROK: mount(/dev/loop0, mnt, xfs, 0, (nil)) failed: EINVAL (22)
>
> Well, I tried with mkfs.xfs from openSUSE Leap 15.6 (tested via rapido-linux),
> probably the defaults add it.
>
> $ mkfs.xfs -V
> mkfs.xfs version 6.7.0
...but mkfs.xfs 6.7 enables y2038 support by default unless you specify
otherwise, which is why it still won't mount. Hence my suggestion to
use the config files if they're available. If not, then either run
xfsprogs 5.10 on kernel 5.10, or create per-kernel xfs opts that
override the defaults to put them back down to whatever were the mkfs
defaults in 5.10.
> Also I noted that test works on our 5.3.18 based SLES15-SP2 with xfsprogs
> 4.15.0. Maybe I'm just wasting your time with wrong patch.
<shrug> QA configuration for a bunch of kernels is irritatingly hard,
we all need to compare notes when we can. :)
--D
> Kind regards,
> Petr
>
> > --D
>
> > > [ 10.123035] XFS (loop0): Filesystem cannot be safely mounted by this kernel.
> > > [ 10.123916] XFS (loop0): SB validate failed with error -22.
> > > tst_test.c:1183: TBROK: mount(/dev/loop0, mnt, xfs, 0, (nil)) failed: EINVAL (22)
>
> > > This also causes Btrfs testing to be skipped due TBROK on XFS. With increased version we get on 5.4 LTS:
>
> > > # ./ioctl_ficlone03
> > > tst_test.c:1904: TINFO: Tested kernel: 5.4.291 #194 SMP Fri Mar 21 10:18:02 CET 2025 x86_64
> > > ...
> > > tst_supported_fs_types.c:49: TINFO: mkfs is not needed for tmpfs
> > > tst_test.c:1833: TINFO: === Testing on xfs ===
> > > tst_cmd.c:281: TINFO: Parsing mkfs.xfs version
> > > tst_test.c:969: TCONF: The test requires kernel 5.10 or newer
> > > tst_test.c:1833: TINFO: === Testing on btrfs ===
> > > tst_test.c:1170: TINFO: Formatting /dev/loop0 with btrfs opts='' extra opts=''
> > > [ 30.143670] BTRFS: device fsid 1a6d250c-0636-11f0-850f-c598bdcd84c4 devid 1 transid 6 /dev/loop0
> > > tst_test.c:1183: TINFO: Mounting /dev/loop0 to /tmp/LTP_iocjwzyal/mnt fstyp=btrfs flags=0
> > > [ 30.156563] BTRFS info (device loop0): using crc32c (crc32c-generic) checksum algorithm
> > > [ 30.157363] BTRFS info (device loop0): flagging fs with big metadata feature
> > > [ 30.158061] BTRFS info (device loop0): using free space tree
> > > [ 30.158620] BTRFS info (device loop0): has skinny extents
> > > [ 30.159911] BTRFS info (device loop0): enabling ssd optimizations
> > > [ 30.160652] BTRFS info (device loop0): checking UUID tree
> > > ioctl_ficlone03_fix.c:49: TPASS: invalid source : EBADF (9)
> > > ioctl_ficlone03_fix.c:55: TPASS: invalid source : EBADF (9)
>
> > > Fixing commit is 29887a2271319 ("xfs: enable big timestamps").
>
> > > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > > ---
> > > Hi all,
>
> > > I suppose we aren't covering a test bug with this and test is really
> > > wrong expecting 4.16 would work on XFS. FYI this affects 5.4.291
> > > (latest 5.4 LTS which is still supported) and would not be fixed due a
> > > lot of missing functionality from 5.10.
>
> > > Kind regards,
> > > Petr
>
> > > testcases/kernel/syscalls/ioctl/ioctl_ficlone03.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
>
> > > diff --git a/testcases/kernel/syscalls/ioctl/ioctl_ficlone03.c b/testcases/kernel/syscalls/ioctl/ioctl_ficlone03.c
> > > index 6a9d270d9f..e2ab10cba1 100644
> > > --- a/testcases/kernel/syscalls/ioctl/ioctl_ficlone03.c
> > > +++ b/testcases/kernel/syscalls/ioctl/ioctl_ficlone03.c
> > > @@ -113,7 +113,7 @@ static struct tst_test test = {
> > > {.type = "bcachefs"},
> > > {
> > > .type = "xfs",
> > > - .min_kver = "4.16",
> > > + .min_kver = "5.10",
> > > .mkfs_ver = "mkfs.xfs >= 1.5.0",
> > > .mkfs_opts = (const char *const []) {"-m", "reflink=1", NULL},
> > > },
> > > --
> > > 2.47.2
>
>
>
next prev parent reply other threads:[~2025-03-21 16:18 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-21 10:03 [RFC PATCH 1/1] ioctl_ficlone03: Require 5.10 for XFS Petr Vorel
2025-03-21 10:40 ` Andrea Cervesato
2025-03-21 15:23 ` Darrick J. Wong
2025-03-21 16:06 ` Petr Vorel
2025-03-21 16:18 ` Darrick J. Wong [this message]
2025-03-24 11:32 ` Petr Vorel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250321161846.GM2803749@frogsfrogsfrogs \
--to=djwong@kernel.org \
--cc=allison.henderson@oracle.com \
--cc=amir73il@gmail.com \
--cc=andrea.cervesato@suse.com \
--cc=chrubis@suse.cz \
--cc=darrick.wong@oracle.com \
--cc=dchinner@redhat.com \
--cc=fstests@vger.kernel.org \
--cc=hch@lst.de \
--cc=hsiangkao@redhat.com \
--cc=jack@suse.cz \
--cc=linux-xfs@vger.kernel.org \
--cc=liwang@redhat.com \
--cc=ltp@lists.linux.it \
--cc=pvorel@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox