[LTP] [PATCH v2] syscalls/clock_settime03: Fix testcases have been waiting, timeout failure
Richard Palethorpe
rpalethorpe@suse.de
Mon Oct 10 11:32:23 CEST 2022
Hello,
Lianjie Zhang <zhanglianjie@uniontech.com> writes:
> From: zhanglianjie <zhanglianjie@uniontech.com>
>
> If the system enables auto-synchronization time configuration,
> this test case will wait until the timeout. Therefore,
> the automatic synchronization time configuration of the system needs to be turned off in the setup phase.
>
> message:
> tst_test.c:1457: TINFO: Timeout per run is 0h 05m 00s
> clock_settime03.c:35: TINFO: Testing variant: syscall with old kernel spec
> tst_test.c:1506: TINFO: If you are running on slow machine, try exporting LTP_TIMEOUT_MUL > 1
> tst_test.c:1507: TBROK: Test killed! (timeout?)
>
> Signed-off-by: zhanglianjie <zhanglianjie@uniontech.com>
>
> diff --git a/testcases/kernel/syscalls/clock_settime/clock_settime03.c b/testcases/kernel/syscalls/clock_settime/clock_settime03.c
> index f196a257c..ce0e7b4c4 100644
> --- a/testcases/kernel/syscalls/clock_settime/clock_settime03.c
> +++ b/testcases/kernel/syscalls/clock_settime/clock_settime03.c
> @@ -31,6 +31,7 @@ static struct time64_variants variants[] = {
> static void setup(void)
> {
> struct time64_variants *tv = &variants[tst_variant];
> + int ret;
>
> tst_res(TINFO, "Testing variant: %s", tv->desc);
> start.type = end.type = its.type = tv->ts_type;
> @@ -40,6 +41,10 @@ static void setup(void)
> sizeof(start.ts.kern_old_ts.tv_sec) == 4) {
> tst_brk(TCONF, "Not Y2038 safe to run test");
> }
> +
> + ret = tst_system("timedatectl set-ntp false");
This still requires that systemd is being used to set the time.
Possibly we could setup a second timer which uses CLOCK_MONOTONIC. If
that expires before the other then we can check if the time was reset to
the present and signal TCONF.
> + if (ret)
> + tst_res(TINFO, "failed to timedatectl set-ntp");
> }
>
> static void run(void)
> --
> 2.20.1
--
Thank you,
Richard.
More information about the ltp
mailing list