ipc/compat: convert to COMPAT_SYSCALL_DEFINE with changing parameter types
In order to allow the COMPAT_SYSCALL_DEFINE macro generate code that performs proper zero and sign extension convert all 64 bit parameters to their corresponding 32 bit compat counterparts. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
This commit is contained in:
parent
932602e238
commit
8eee9093cd
2 changed files with 10 additions and 10 deletions
|
@ -655,11 +655,11 @@ asmlinkage long compat_sys_mq_open(const char __user *u_name,
|
|||
struct compat_mq_attr __user *u_attr);
|
||||
asmlinkage long compat_sys_mq_timedsend(mqd_t mqdes,
|
||||
const char __user *u_msg_ptr,
|
||||
size_t msg_len, unsigned int msg_prio,
|
||||
compat_size_t msg_len, unsigned int msg_prio,
|
||||
const struct compat_timespec __user *u_abs_timeout);
|
||||
asmlinkage ssize_t compat_sys_mq_timedreceive(mqd_t mqdes,
|
||||
char __user *u_msg_ptr,
|
||||
size_t msg_len, unsigned int __user *u_msg_prio,
|
||||
compat_size_t msg_len, unsigned int __user *u_msg_prio,
|
||||
const struct compat_timespec __user *u_abs_timeout);
|
||||
asmlinkage long compat_sys_socketcall(int call, u32 __user *args);
|
||||
asmlinkage long compat_sys_sysctl(struct compat_sysctl_args __user *args);
|
||||
|
|
|
@ -78,10 +78,10 @@ static int compat_prepare_timeout(struct timespec __user **p,
|
|||
return 0;
|
||||
}
|
||||
|
||||
asmlinkage long compat_sys_mq_timedsend(mqd_t mqdes,
|
||||
const char __user *u_msg_ptr,
|
||||
size_t msg_len, unsigned int msg_prio,
|
||||
const struct compat_timespec __user *u_abs_timeout)
|
||||
COMPAT_SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes,
|
||||
const char __user *, u_msg_ptr,
|
||||
compat_size_t, msg_len, unsigned int, msg_prio,
|
||||
const struct compat_timespec __user *, u_abs_timeout)
|
||||
{
|
||||
struct timespec __user *u_ts;
|
||||
|
||||
|
@ -92,10 +92,10 @@ asmlinkage long compat_sys_mq_timedsend(mqd_t mqdes,
|
|||
msg_prio, u_ts);
|
||||
}
|
||||
|
||||
asmlinkage ssize_t compat_sys_mq_timedreceive(mqd_t mqdes,
|
||||
char __user *u_msg_ptr,
|
||||
size_t msg_len, unsigned int __user *u_msg_prio,
|
||||
const struct compat_timespec __user *u_abs_timeout)
|
||||
COMPAT_SYSCALL_DEFINE5(mq_timedreceive, mqd_t, mqdes,
|
||||
char __user *, u_msg_ptr,
|
||||
compat_size_t, msg_len, unsigned int __user *, u_msg_prio,
|
||||
const struct compat_timespec __user *, u_abs_timeout)
|
||||
{
|
||||
struct timespec __user *u_ts;
|
||||
if (compat_prepare_timeout(&u_ts, u_abs_timeout))
|
||||
|
|
Loading…
Reference in a new issue