Re: [LTP] [PATCH v4 3/7] syscalls/swapon03: use tst_max_swapfiles() and GET_USED_SWAPFILES() api

Yang Xu (Fujitsu) via ltp
2024-02-22T01:27:47Z

> Hi Xu,
>
> I see swapon03 failures on aarch64 and ppc64le on SLES and openSUSE after this commit.
>
> Here is timeout after 31s:
>
> # ./swapon03
> ...
> tst_test.c:1701: TINFO: === Testing on ext2 ===
> tst_test.c:1117: TINFO: Formatting /dev/loop0 with ext2 opts='' extra opts=''
> mke2fs 1.47.0 (5-Feb-2023)
> tst_test.c:1131: TINFO: Mounting /dev/loop0 to /tmp/LTP_swaVqwa6f/mntpoint fstyp=ext2 flags=0
> tst_ioctl.c:26: TINFO: FIBMAP ioctl is supported
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> Test timeouted, sending SIGKILL!
> tst_test.c:1679: TINFO: If you are running on slow machine, try exporting LTP_TIMEOUT_MUL > 1
> tst_test.c:1681: TBROK: Test killed! (timeout?)
>
> Summary:
> passed 0
> failed 0
> broken 1
> skipped 0
> warnings 0
> ### TEST swapon03 COMPLETE >>> 2.
>
> I tried to run with .max_runtime = 60, but even then it fails after 1m 30s:
> ...
> tst_supported_fs_types.c:97: TINFO: Kernel supports tmpfs
> tst_supported_fs_types.c:49: TINFO: mkfs is not needed for tmpfs
> tst_test.c:1701: TINFO: === Testing on ext2 ===
> tst_test.c:1117: TINFO: Formatting /dev/loop0 with ext2 opts='' extra opts=''
> mke2fs 1.47.0 (5-Feb-2023)
> tst_test.c:1131: TINFO: Mounting /dev/loop0 to /tmp/LTP_swaQsjhAp/mntpoint fstyp=ext2 flags=0
> tst_ioctl.c:26: TINFO: FIBMAP ioctl is supported
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> tst_kconfig.c:87: TINFO: Parsing kernel config '/proc/config.gz'
> Test timeouted, sending SIGKILL!
> tst_test.c:1679: TINFO: If you are running on slow machine, try exporting LTP_TIMEOUT_MUL > 1
> tst_test.c:1681: TBROK: Test killed! (timeout?)
>
> Summary:
> passed 0
> failed 0
> broken 1
> skipped 0
> warnings 0
>
> I'm trying with LTP_TIMEOUT_MUL=3.
>
> BTW there is still broken swapoff01 on master on ppc64le which I reported [1]:
> libswap.c:153: TBROK: Failed to create swapfile
> (obviously no change in this patchset)
>
> But I'll ping Li separately.
>
> Kind regards,
> Petr
>
> [1] https://lore.kernel.org/ltp/20240131190122.GB30901@pevik/

To be honest, I don't know why this commit leads case hang.
So can you add some debug info in swapon03 between tst_max_swapfiles and
tst_count_swaps
api(I can't reproduce it becase I don't have situation)
ps: I guess the following way maybe lead hang in tst_count_swaps
"
+ while ((c = fgetc(fp)) != EOF) {
+ if (c == '\n')
+ used++;
+ }
"

Maybe I should use the old way[1]

[1]https://patchwork.ozlabs.org/project/ltp/patch/20231222050006.148845-2-xuyang2018.jy@fujitsu.com/

Best Regards
Yang Xu