Re: [PATCHv2 2/3] selftests: Add test of O_BENEATH & openat(2)

From: David Drysdale
Date: Fri Nov 21 2014 - 09:20:36 EST

On Tue, Nov 11, 2014 at 5:36 AM, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
> [cc fstests@xxxxxxxxxxxxxxx]
> On Tue, Nov 04, 2014 at 09:54:43AM +0000, David Drysdale wrote:
>> Add simple tests of openat(2) variations, including examples that
>> check the new O_BENEATH flag.
>> Signed-off-by: David Drysdale <drysdale@xxxxxxxxxx>
> Wouldn't this be better added to fstests? That's the regression
> test suite used by filesystem developers and most distro QA
> organisations and where the fs developers aggregate all their new
> regression tests.
> IMO, the fewer places we aggregate VFS/filesystem tests the better.
> I really don't think the kernel tree is the best place for adding
> VFS behavioural tests because it has none of the infrastructure
> around it to test arbitrary filesystems and configurations and hence
> is not particularly useful to the people whoa re likely to notice
> and care about fs regression tests suddenly breaking.
> As an example, the recent renameat() syscall additions (e.g.
> RENAME_EXCHANGE, RENAME_NOREPLACE) have unit tests in fstests, so
> these new O_BENEATH tests should really follow the same model...
> Cheers,
> Dave.

Fair enough, that makes sense -- I've now got a version of the selftest
running within xfstests (git:// is the
master repo, right?).

Given that xfstests is independent of the kernel, what's the expected
way to deal with flags (or syscalls) that are only in specific kernel
versions? At the moment I've just got a primitive override at
compile time (#ifndef O_BENEATH #define O_BENEATH ...), and
then the test will fail at run-time against an older kernel -- is there a
need for anything more sophisticated? (And if so, are there any
examples I can crib from?)

Also, is there an archive of the fstests@ mailing list somewhere?

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at