// SPDX-License-Identifier: GPL-2.0
+#define _GNU_SOURCE
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
 #include <errno.h>
-#include <linux/msg.h>
+#include <sys/msg.h>
 #include <fcntl.h>
 
 #include "../kselftest.h"
        return 0;
 
 destroy:
-       if (msgctl(id, IPC_RMID, 0))
+       if (msgctl(id, IPC_RMID, NULL))
                printf("Failed to destroy queue: %d\n", -errno);
        return ret;
 }
 
        ret = 0;
 err:
-       if (msgctl(msgque->msq_id, IPC_RMID, 0)) {
+       if (msgctl(msgque->msq_id, IPC_RMID, NULL)) {
                printf("Failed to destroy queue: %d\n", -errno);
                return -errno;
        }
 
 int dump_queue(struct msgque_data *msgque)
 {
-       struct msqid64_ds ds;
+       struct msqid_ds ds;
        int kern_id;
        int i, ret;
 
        return ksft_exit_pass();
 
 err_destroy:
-       if (msgctl(msgque.msq_id, IPC_RMID, 0)) {
+       if (msgctl(msgque.msq_id, IPC_RMID, NULL)) {
                printf("Failed to destroy queue: %d\n", -errno);
                return ksft_exit_fail();
        }