diff options
Diffstat (limited to 'debian/patches')
-rw-r--r-- | debian/patches/series | 1 | ||||
-rw-r--r-- | debian/patches/upstream/tests-lsfd-mkfds-multiplexing-skip-if-proc-pid-syscall-is.patch | 55 |
2 files changed, 56 insertions, 0 deletions
diff --git a/debian/patches/series b/debian/patches/series index 77bbc87..1a20d7b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -7,3 +7,4 @@ debian/tests-mark-lsfd-tests-failing-in-sbuild.patch upstream/lsfd-add-LSFD_DEBUG-env-var-for-debugging.patch upstream/tests-test_mkfds-sockdiag-verify-the-recived-message.patch debian/tests-mark-fadvise-drop-as-known-failing-on-buildds.patch +upstream/tests-lsfd-mkfds-multiplexing-skip-if-proc-pid-syscall-is.patch diff --git a/debian/patches/upstream/tests-lsfd-mkfds-multiplexing-skip-if-proc-pid-syscall-is.patch b/debian/patches/upstream/tests-lsfd-mkfds-multiplexing-skip-if-proc-pid-syscall-is.patch new file mode 100644 index 0000000..cdd72f6 --- /dev/null +++ b/debian/patches/upstream/tests-lsfd-mkfds-multiplexing-skip-if-proc-pid-syscall-is.patch @@ -0,0 +1,55 @@ +From: Masatake YAMATO <yamato@redhat.com> +Date: Fri, 5 Apr 2024 04:00:45 +0900 +Subject: tests: (lsfd::mkfds-multiplexing) skip if /proc/$pid/syscall is + broken + +Close #2867 +Close #2887 + +We should skip the test case on the platforms where /proc/$pid/syscall +doesn't report correct system call number. On such platforms, + +Signed-off-by: Masatake YAMATO <yamato@redhat.com> +--- + tests/ts/lsfd/mkfds-multiplexing | 16 +++++++++++++++- + 1 file changed, 15 insertions(+), 1 deletion(-) + +diff --git a/tests/ts/lsfd/mkfds-multiplexing b/tests/ts/lsfd/mkfds-multiplexing +index 8cc7f31..a53f6eb 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: $?" |