The msgque test uses the MSG_COPY flag, which depends on CONFIG_CHECKPOINT_RESTORE. On kernels where this option is disabled, msgrcv() fails with ENOSYS.
Currently, the test reports this as a failure: Change it to skip the test instead, as the failure is due to missing kernel configuration rather than a bug in the IPC subsystem. # selftests: ipc: msgque # not ok 1 Failed to copy IPC message: Function not implemented (38) # not ok 2 Failed to dump queue: -38 After this patch, the test reports a skip instead of failure: 1..0 # SKIP MSG_COPY not supported Signed-off-by: UYeol Jo <[email protected]> --- tools/testing/selftests/ipc/msgque.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/testing/selftests/ipc/msgque.c b/tools/testing/selftests/ipc/msgque.c index e107379d185c..82f73cdae120 100644 --- a/tools/testing/selftests/ipc/msgque.c +++ b/tools/testing/selftests/ipc/msgque.c @@ -161,6 +161,9 @@ int dump_queue(struct msgque_data *msgque) ret = msgrcv(msgque->msq_id, &msgque->messages[i].mtype, MAX_MSG_SIZE, i, IPC_NOWAIT | MSG_COPY); if (ret < 0) { + if (errno == ENOSYS) + ksft_exit_skip("MSG_COPY not supported\n"); + ksft_test_result_fail("Failed to copy IPC message: %m (%d)\n", errno); return -errno; } -- 2.43.0

