From: Eric Biggers <ebiggers@kernel.org>
To: Yang Xu <xuyang2018.jy@fujitsu.com>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [PATCH v4 2/4] syscalls/statx10: Add basic test for STATX_DIOALIGN on regular file
Date: Wed, 26 Apr 2023 15:06:54 -0700 [thread overview]
Message-ID: <20230426220654.GD58528@sol.localdomain> (raw)
In-Reply-To: <1680759622-8738-2-git-send-email-xuyang2018.jy@fujitsu.com>
On Thu, Apr 06, 2023 at 01:40:20PM +0800, Yang Xu wrote:
> + * On ext4, files that use certain filesystem features (data journaling,
> + * encryption, and verity) fall back to buffered I/O. But ltp doesn't use these
> + * features by default, So I think dio should not fall back to buffered I/O.
Does LTP create and mount the filesystem itself?
If not, then it wouldn't have control over this.
> + if (!(buf.stx_mask & STATX_DIOALIGN)) {
> + tst_res(TCONF, "STATX_DIOALIGN is not supported until linux 6.1");
> + return;
> + }
"Filesystem does not support STATX_DIOALIGN"
> +
> +#ifdef HAVE_STRUCT_STATX_STX_DIO_MEM_ALIGN
This looks wrong. If the system headers are missing this field, then the
definition in the LTP source tree should be used instead.
> + if (buf.stx_dio_mem_align != 0)
> + tst_res(TPASS, "stx_dio_mem_align: %u", buf.stx_dio_mem_align);
> + else
> + tst_res(TFAIL, "don't get stx_dio_mem_align on supported dio fs");
For the failure case: "stx_dio_mem_align was 0, but DIO should be supported"
> +
> + if (buf.stx_dio_offset_align != 0)
> + tst_res(TPASS, "stx_dio_offset_align: %u", buf.stx_dio_offset_align);
> + else
> + tst_res(TFAIL, "don't get stx_dio_offset_align on supported dio fs");
> +#endif
For the failure case: "stx_dio_offset_align was 0, but DIO should be supported"
> + SAFE_FILE_PRINTF(TESTFILE, "AAAA");
> + fd = open(TESTFILE, O_RDWR | O_DIRECT);
> + if (fd == -1 && errno == EINVAL) {
> + SAFE_CLOSE(fd);
> + tst_brk(TCONF, "The regular file is not on a filesystem that support DIO");
> + }
> + SAFE_CLOSE(fd);
The open() is not checked for error in all cases.
Also, this is closing the file descriptor even when it is -1.
> +static struct tst_test test = {
> + .test_all = verify_statx,
> + .setup = setup,
> + .needs_root = 1,
Why does this test need root?
- Eric
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2023-04-26 22:07 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-30 8:22 [LTP] [PATCH 1/3] lapi/stat.h: Add STATX_DIOALIGN related definition Yang Xu
2023-03-30 8:22 ` [LTP] [PATCH 2/3] syscalls/statx10: Add basic test for STATX_DIOALIGN Yang Xu
2023-03-30 16:46 ` Eric Biggers
2023-03-31 12:56 ` xuyang2018.jy
2023-03-31 19:29 ` Eric Biggers
2023-04-03 1:24 ` xuyang2018.jy
2023-04-03 3:06 ` Eric Biggers
2023-04-03 10:44 ` [LTP] [PATCH v2 1/4] lapi/stat.h: Add STATX_DIOALIGN related definition Yang Xu
2023-04-03 10:44 ` [LTP] [PATCH v2 2/4] syscalls/statx10: Add basic test for STATX_DIOALIGN on regular file Yang Xu
2023-04-03 17:01 ` Eric Biggers
2023-04-04 3:10 ` xuyang2018.jy
2023-04-04 5:46 ` xuyang2018.jy
2023-04-03 10:44 ` [LTP] [PATCH v2 3/4] syscalls/statx11: Add basic test for STATX_DIOALIGN on blockdev Yang Xu
2023-04-03 17:04 ` Eric Biggers
2023-04-04 3:14 ` xuyang2018.jy
2023-04-04 7:30 ` [LTP] [PATCH v3 1/4] lapi/stat.h: Add STATX_DIOALIGN related definition Yang Xu
2023-04-04 7:30 ` [LTP] [PATCH v3 2/4] syscalls/statx10: Add basic test for STATX_DIOALIGN on regular file Yang Xu
2023-04-04 21:52 ` Eric Biggers
2023-04-06 4:52 ` xuyang2018.jy
2023-04-04 7:30 ` [LTP] [PATCH v3 3/4] syscalls/statx11: Add basic test for STATX_DIOALIGN on block device Yang Xu
2023-04-04 21:59 ` Eric Biggers
2023-04-06 4:57 ` xuyang2018.jy
2023-04-06 5:36 ` xuyang2018.jy
2023-04-06 5:40 ` [LTP] [PATCH v4 1/4] lapi/stat.h: Add STATX_DIOALIGN related definition Yang Xu
2023-04-06 5:40 ` [LTP] [PATCH v4 2/4] syscalls/statx10: Add basic test for STATX_DIOALIGN on regular file Yang Xu
2023-04-26 22:06 ` Eric Biggers [this message]
2023-04-27 3:03 ` Yang Xu (Fujitsu)
2023-05-01 17:44 ` Eric Biggers
2023-05-01 17:47 ` Eric Biggers
2023-05-08 8:25 ` Yang Xu (Fujitsu)
2023-05-08 8:30 ` Yang Xu (Fujitsu)
2023-04-06 5:40 ` [LTP] [PATCH v4 3/4] syscalls/statx11: Add basic test for STATX_DIOALIGN on block device Yang Xu
2023-04-26 22:12 ` Eric Biggers
2023-04-27 3:37 ` Yang Xu (Fujitsu)
2023-04-27 3:50 ` Yang Xu (Fujitsu)
2023-05-01 17:49 ` Eric Biggers
2023-05-08 8:26 ` Yang Xu (Fujitsu)
2023-04-06 5:40 ` [LTP] [PATCH v4 4/4] lapi/stat.h: Remove deprecated STATX_ALL macro Yang Xu
2023-04-26 21:56 ` Eric Biggers
2023-04-27 1:52 ` Yang Xu (Fujitsu)
2023-04-26 9:57 ` [LTP] [PATCH v4 1/4] lapi/stat.h: Add STATX_DIOALIGN related definition Yang Xu (Fujitsu)
2023-04-26 21:56 ` Eric Biggers
2023-04-27 1:36 ` Yang Xu (Fujitsu)
2023-04-04 7:30 ` [LTP] [PATCH v3 4/4] lapi/stat.h: Remove deprecated STATX_ALL macro Yang Xu
2023-04-03 10:44 ` [LTP] [PATCH v2 " Yang Xu
2023-03-30 8:22 ` [LTP] [PATCH 3/3] " Yang Xu
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=20230426220654.GD58528@sol.localdomain \
--to=ebiggers@kernel.org \
--cc=ltp@lists.linux.it \
--cc=xuyang2018.jy@fujitsu.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.