Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9ba546c0 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Al Viro
Browse files

aio: don't expose __aio_sigset in uapi



glibc uses a different defintion of sigset_t than the kernel does,
and the current version would pull in both.  To fix this just do not
expose the type at all - this somewhat mirrors pselect() where we
do not even have a type for the magic sigmask argument, but just
use pointer arithmetics.

Fixes: 7a074e96 ("aio: implement io_pgetevents")
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reported-by: default avatarAdrian Reber <adrian@lisas.de>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent c7e9075f
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -2042,6 +2042,11 @@ SYSCALL_DEFINE5(io_getevents, aio_context_t, ctx_id,
	return ret;
}

struct __aio_sigset {
	const sigset_t __user	*sigmask;
	size_t		sigsetsize;
};

SYSCALL_DEFINE6(io_pgetevents,
		aio_context_t, ctx_id,
		long, min_nr,
+1 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@
#ifndef _LINUX_SYSCALLS_H
#define _LINUX_SYSCALLS_H

struct __aio_sigset;
struct epoll_event;
struct iattr;
struct inode;
+0 −6
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@

#include <linux/types.h>
#include <linux/fs.h>
#include <linux/signal.h>
#include <asm/byteorder.h>

typedef __kernel_ulong_t aio_context_t;
@@ -108,10 +107,5 @@ struct iocb {
#undef IFBIG
#undef IFLITTLE

struct __aio_sigset {
	const sigset_t __user	*sigmask;
	size_t		sigsetsize;
};

#endif /* __LINUX__AIO_ABI_H */