diff mbox series

[1/1] aio-stress: TCONF on O_DIRECT on tmpfs

Message ID 20221216114331.28883-1-pvorel@suse.cz
State Accepted
Headers show
Series [1/1] aio-stress: TCONF on O_DIRECT on tmpfs | expand

Commit Message

Petr Vorel Dec. 16, 2022, 11:43 a.m. UTC
O_DIRECT is not supported on tmpfs. This flag is added by -O option,
thus cannot be filtered with .skip_filesystems.

Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
 testcases/kernel/io/ltp-aiodio/aio-stress.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Comments

Petr Vorel Dec. 16, 2022, 11:46 a.m. UTC | #1
Hi Andrea,

> O_DIRECT is not supported on tmpfs. This flag is added by -O option,
> thus cannot be filtered with .skip_filesystems.

NOTE: it fixes
aio-stress.c:1339: TBROK: open(file0.bin,16450,0600) failed: EINVAL (22)

Kind regards,
Petr
Richard Palethorpe Jan. 9, 2023, 10:58 a.m. UTC | #2
Hello,

Petr Vorel <pvorel@suse.cz> writes:

> Hi Andrea,
>
>> O_DIRECT is not supported on tmpfs. This flag is added by -O option,
>> thus cannot be filtered with .skip_filesystems.
>
> NOTE: it fixes
> aio-stress.c:1339: TBROK: open(file0.bin,16450,0600) failed: EINVAL (22)
>
> Kind regards,
> Petr

I merged this, although I don't think it is quite correct to say tmpfs
doesn't support O_DIRECT. It's more like it is in O_DIRECT mode by
default. Either way though we don't need to run the test with O_DIRECT
and without it.
Petr Vorel Jan. 11, 2023, 9:04 a.m. UTC | #3
Hi Richie,

> I merged this, although I don't think it is quite correct to say tmpfs
> doesn't support O_DIRECT. It's more like it is in O_DIRECT mode by
> default. Either way though we don't need to run the test with O_DIRECT
> and without it.

NOTE: feel free to correct me (amend the message) before merge.

Kind regards,
Petr
diff mbox series

Patch

diff --git a/testcases/kernel/io/ltp-aiodio/aio-stress.c b/testcases/kernel/io/ltp-aiodio/aio-stress.c
index 39db14d651..f20383dcfc 100644
--- a/testcases/kernel/io/ltp-aiodio/aio-stress.c
+++ b/testcases/kernel/io/ltp-aiodio/aio-stress.c
@@ -1239,10 +1239,13 @@  static void setup(void)
 	if (tst_parse_int(str_num_threads, &num_threads, 1, INT_MAX))
 		tst_brk(TBROK, "Invalid number of threads '%s'", str_num_threads);
 
-	if (str_o_flag)
+	if (str_o_flag) {
+		if (tst_fs_type(".") == TST_TMPFS_MAGIC)
+			tst_brk(TCONF, "O_DIRECT not supported on tmpfs");
 		o_flag = O_DIRECT;
-	else
+	} else {
 		o_flag = O_SYNC;
+	}
 
 	if (str_use_shm) {
 		if (!strcmp(str_use_shm, "shm")) {