]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/commit
util-linux: correct test case kill/decode for bash 5.3
authorHongxu Jia <hongxu.jia@windriver.com>
Mon, 28 Jul 2025 13:42:38 +0000 (21:42 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 31 Jul 2025 09:47:57 +0000 (10:47 +0100)
commit175f5a5bba6204cbcfbdeabb6c6b98f0f7453558
treeb13e1fabf8be6d4ac38b6c5d723a326bdc6f8baf
parent383862cfe4c5acf04124080827c8bc6d00b2e86d
util-linux: correct test case kill/decode for bash 5.3

After upgrading bash to 5.3 to contain commit [1], if SIGINT was trapped in
asynchronous subshell, bash called set_signal_async_ignored to make sure
processes that are created by this asynchronous subshell to ignore SIGINT.

And it caused test case `kill/decode' failed, the signal INT was existed in
both of Blocked and Ignored

root@qemux86-64:~# cd /usr/lib/util-linux/ptest/
root@qemux86-64:/usr/lib/util-linux/ptest# ./run-ptest
...
diff-{{{
|--- /usr/lib/util-linux/ptest/tests/expected/kill/decode        2011-04-05 23:00:00.000000000 +0000
|+++ /usr/lib/util-linux/ptest/tests/output/kill/decode  2025-07-28 12:09:46.279000000 +0000
@@ -16,5 +16,5 @@
 Pending (thread): INT ILL
 Pending (process): USR1
 Blocked: INT ILL ABRT FPE USR1 SEGV TERM
-Ignored: HUP QUIT TRAP PIPE ALRM
+Ignored: HUP INT QUIT TRAP PIPE ALRM
 Caught: ILL USR1
}}}-diff
...

Explicitly reset SIGINT to default action after trapping, then the
test case `kill/decode' works on both of old (<5.3) and new (>=5.3) bash

[1] https://cgit.git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=a5d2617c7a7e602ace1f4149987cdfd075c4e762

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-core/util-linux/util-linux.inc
meta/recipes-core/util-linux/util-linux/0001-tests-helpers-test_sigstate.c-explicitly-reset-SIGIN.patch [new file with mode: 0644]