]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
selftests/ipc: skip msgque test when MSG_COPY is unsupported
authorUYeol Jo <jouyeol8739@gmail.com>
Tue, 10 Feb 2026 13:53:59 +0000 (22:53 +0900)
committerAndrew Morton <akpm@linux-foundation.org>
Sat, 28 Mar 2026 04:19:34 +0000 (21:19 -0700)
msgque kselftest uses msgrcv(..., MSG_COPY) to copy messages.  When the
kernel is built without CONFIG_CHECKPOINT_RESTORE, prepare_copy() is
stubbed out and msgrcv() returns -ENOSYS.  The test currently reports this
as a failure even though it is simply a missing feature/configuration.

Skip the test when msgrcv() fails with ENOSYS.

Link: https://lkml.kernel.org/r/20260210135359.178636-1-jouyeol8739@gmail.com
Signed-off-by: UYeol Jo <jouyeol8739@gmail.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Wei Yang <richard.weiyang@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
tools/testing/selftests/ipc/msgque.c

index e107379d185cb1e89c7c6ffd91e92e7740b2ed83..82f73cdae1206becfe6993d60dc73d4b051adb5c 100644 (file)
@@ -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;
                }