aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarel Zak <kzak@redhat.com>2024-04-09 12:07:12 +0200
committerKarel Zak <kzak@redhat.com>2024-04-09 12:07:12 +0200
commit4a5b4cfccadbc687c69497f892aea496cc4c9209 (patch)
tree60e233ae1dfde2378846e3de76a30256abbf6395
parent688d25ee2111cc99ed893cc4c25aba0c5eaeeb99 (diff)
parent59f818429767d3b17d4accfb8819e7670ed840ca (diff)
downloadutil-linux-4a5b4cfccadbc687c69497f892aea496cc4c9209.tar.gz
Merge branch 'lsfd--verify-proc-syscall-for-master' of https://github.com/masatake/util-linux
* 'lsfd--verify-proc-syscall-for-master' of https://github.com/masatake/util-linux: tests: (lsfd::mkfds-multiplexing) skip if /proc/$pid/syscall is broken
-rwxr-xr-xtests/ts/lsfd/mkfds-multiplexing16
1 files changed, 15 insertions, 1 deletions
diff --git a/tests/ts/lsfd/mkfds-multiplexing b/tests/ts/lsfd/mkfds-multiplexing
index 8cc7f31c09..a53f6eb122 100755
--- a/tests/ts/lsfd/mkfds-multiplexing
+++ b/tests/ts/lsfd/mkfds-multiplexing
@@ -26,6 +26,8 @@ ts_check_test_command "$TS_HELPER_MKFDS"
# /proc/${PID}/syscall is rendered in the host side byteorder.
ts_skip_qemu_user
+ts_check_prog "cat"
+ts_check_prog "cut"
ts_check_prog "grep"
ts_cd "$TS_OUTDIR"
@@ -44,12 +46,24 @@ for multiplexer in pselect6 select poll ppoll; do
} > "$TS_OUTPUT" 2>&1
if read -r -u "${MKFDS[0]}" PID; then
- if ! cat /proc/"${PID}"/syscall > /dev/null 2>&1; then
+ syscall_line=$(cat /proc/"${PID}"/syscall 2>> "$TS_OUTPUT")
+ syscall_status=$?
+ if [[ "$syscall_status" != 0 ]]; then
kill -CONT "${PID}"
wait "${MKFDS_PID}"
ts_skip_subtest "cannot open /proc/${PID}/syscall"
continue
fi
+ syscall_n=$(cut -f1 -d' ' <<< "$syscall_line")
+ # We assume the syscall number for the $multiplexer is not zero
+ # on any platforms.
+ if [[ "$syscall_n" == 0 ]]; then
+ kill -CONT "${PID}"
+ wait "${MKFDS_PID}"
+ ts_skip_subtest "incorrect syscall number in /proc/${PID}/syscall"
+ continue
+ fi
+
{
"${TS_CMD_LSFD}" -n -o ASSOC,XMODE -p "${PID}" -Q '(FD >= 10) && (FD <= 22)'
echo "[$multiplexer] ASSOC,XMODE: $?"