selftests/nolibc: stat_timestamps: remove procfs dependency
authorZhangjin Wu <falcon@tinylab.org>
Fri, 7 Jul 2023 18:43:44 +0000 (02:43 +0800)
committerWilly Tarreau <w@1wt.eu>
Wed, 23 Aug 2023 02:38:02 +0000 (04:38 +0200)
'/proc/self/' is a good path which doesn't have stale time info but it
is only available for CONFIG_PROC_FS=y.

When CONFIG_PROC_FS=n, use argv0 instead of '/proc/self', use '/' for the
worst case.

Reviewed-by: Thomas Weißschuh <linux@weissschuh.net>
Signed-off-by: Zhangjin Wu <falcon@tinylab.org>
Signed-off-by: Willy Tarreau <w@1wt.eu>
tools/testing/selftests/nolibc/nolibc-test.c

index 64fca7c..d7a84ef 100644 (file)
@@ -584,7 +584,7 @@ static int test_stat_timestamps(void)
        if (sizeof(st.st_atim.tv_sec) != sizeof(st.st_atime))
                return 1;
 
-       if (stat("/proc/self/", &st))
+       if (stat("/proc/self/", &st) && stat(argv0, &st) && stat("/", &st))
                return 1;
 
        if (st.st_atim.tv_sec != st.st_atime || st.st_atim.tv_nsec > 1000000000)