ipc/compat: convert to COMPAT_SYSCALL_DEFINE
Convert all compat system call functions where all parameter types have a size of four or less than four bytes, or are pointer types to COMPAT_SYSCALL_DEFINE. The implicit casts within COMPAT_SYSCALL_DEFINE will perform proper zero and sign extension to 64 bit of all parameters if needed. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
@@ -498,7 +498,7 @@ static inline int put_compat_msqid_ds(struct msqid64_ds *m,
|
||||
return err;
|
||||
}
|
||||
|
||||
long compat_sys_msgctl(int first, int second, void __user *uptr)
|
||||
COMPAT_SYSCALL_DEFINE3(msgctl, int, first, int, second, void __user *, uptr)
|
||||
{
|
||||
int err, err2;
|
||||
struct msqid64_ds m64;
|
||||
@@ -668,7 +668,7 @@ static inline int put_compat_shm_info(struct shm_info __user *ip,
|
||||
return err;
|
||||
}
|
||||
|
||||
long compat_sys_shmctl(int first, int second, void __user *uptr)
|
||||
COMPAT_SYSCALL_DEFINE3(shmctl, int, first, int, second, void __user *, uptr)
|
||||
{
|
||||
void __user *p;
|
||||
struct shmid64_ds s64;
|
||||
@@ -749,8 +749,9 @@ long compat_sys_shmctl(int first, int second, void __user *uptr)
|
||||
return err;
|
||||
}
|
||||
|
||||
long compat_sys_semtimedop(int semid, struct sembuf __user *tsems,
|
||||
unsigned nsops, const struct compat_timespec __user *timeout)
|
||||
COMPAT_SYSCALL_DEFINE4(semtimedop, int, semid, struct sembuf __user *, tsems,
|
||||
unsigned, nsops,
|
||||
const struct compat_timespec __user *, timeout)
|
||||
{
|
||||
struct timespec __user *ts64 = NULL;
|
||||
if (timeout) {
|
||||
|
||||
Reference in New Issue
Block a user