[LTP] [PATCH V2 1/2] libs: sigwait: Fix compilation warning around sigprocmask()
Cyril Hrubis
chrubis@suse.cz
Tue Jul 28 15:02:15 CEST 2020
Hi!
> sigwait.c: In function ???test_masked_matching???:
> sigwait.c:157:42: warning: passing argument 3 to restrict-qualified parameter aliases with argument 2 [-Wrestrict]
> 157 | TEST(sigprocmask(SIG_SETMASK, &oldmask, &oldmask));
>
> Fix these by using different pointers for new and old masks.
>
> Reported-by: Petr Vorel <pvorel@suse.cz>
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> ---
> V2: New patch
>
> libs/libltpsigwait/sigwait.c | 14 +++++++-------
> 1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/libs/libltpsigwait/sigwait.c b/libs/libltpsigwait/sigwait.c
> index dbd33a61f2b1..0a34e6cc3deb 100644
> --- a/libs/libltpsigwait/sigwait.c
> +++ b/libs/libltpsigwait/sigwait.c
> @@ -156,11 +156,11 @@ void test_masked_matching(swi_func sigwaitinfo, int signo,
> && si.si_code == SI_USER
> && si.si_signo == signo, "Struct siginfo mismatch");
>
> - TEST(sigprocmask(SIG_SETMASK, &oldmask, &oldmask));
> + TEST(sigprocmask(SIG_SETMASK, &sigs, &oldmask));
> if (TST_RET == -1)
> tst_brk(TBROK | TTERRNO, "restoring original signal mask failed");
It says "restoring the original signal mask" so shouldn't that be
sigprocmask(SIG_SETMASK, &oldmask, &sigs) ?
> - if (sigismember(&oldmask, signo))
> + if (sigismember(&sigs, signo))
> tst_res(TPASS, "sigwaitinfo restored the original mask");
> else
> tst_res(TFAIL,
> @@ -214,11 +214,11 @@ void test_masked_matching_rt(swi_func sigwaitinfo, int signo,
> && si.si_signo == signo + 1,
> "Struct siginfo mismatch");
>
> - TEST(sigprocmask(SIG_SETMASK, &oldmask, &oldmask));
> + TEST(sigprocmask(SIG_SETMASK, &sigs, &oldmask));
> if (TST_RET == -1)
> tst_brk(TBROK | TTERRNO, "restoring original signal mask failed");
>
> - if (sigismember(&oldmask, signo))
> + if (sigismember(&sigs, signo))
> tst_res(TPASS, "sigwaitinfo restored the original mask");
> else
> tst_res(TFAIL,
> @@ -250,11 +250,11 @@ void test_masked_matching_noinfo(swi_func sigwaitinfo, int signo,
> TEST(sigwaitinfo(&sigs, NULL, NULL));
> REPORT_SUCCESS(signo, 0);
>
> - TEST(sigprocmask(SIG_SETMASK, &oldmask, &oldmask));
> + TEST(sigprocmask(SIG_SETMASK, &sigs, &oldmask));
> if (TST_RET == -1)
> tst_brk(TBROK | TTERRNO, "restoring original signal mask failed");
Here as well?
> - if (sigismember(&oldmask, signo))
> + if (sigismember(&sigs, signo))
> tst_res(TPASS, "sigwaitinfo restored the original mask");
> else
> tst_res(TFAIL,
> @@ -289,7 +289,7 @@ void test_bad_address(swi_func sigwaitinfo, int signo,
> TEST(sigwaitinfo(&sigs, (void *)1, NULL));
> REPORT_SUCCESS(-1, EFAULT);
>
> - TEST(sigprocmask(SIG_SETMASK, &oldmask, &oldmask));
> + TEST(sigprocmask(SIG_SETMASK, &sigs, &oldmask));
> if (TST_RET == -1)
> tst_brk(TBROK | TTERRNO, "sigprocmask() failed");
And here?
--
Cyril Hrubis
chrubis@suse.cz
More information about the ltp
mailing list