[PATCH] lightweight robust futexes: compat
32-bit syscall compatibility support. (This patch also moves all futex related compat functionality into kernel/futex_compat.c.) Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Arjan van de Ven <arjan@infradead.org> Acked-by: Ulrich Drepper <drepper@redhat.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
2eec9ad91f
commit
34f192c652
@ -147,6 +147,24 @@ typedef struct compat_sigevent {
|
||||
} _sigev_un;
|
||||
} compat_sigevent_t;
|
||||
|
||||
struct compat_robust_list {
|
||||
compat_uptr_t next;
|
||||
};
|
||||
|
||||
struct compat_robust_list_head {
|
||||
struct compat_robust_list list;
|
||||
compat_long_t futex_offset;
|
||||
compat_uptr_t list_op_pending;
|
||||
};
|
||||
|
||||
extern void compat_exit_robust_list(struct task_struct *curr);
|
||||
|
||||
asmlinkage long
|
||||
compat_sys_set_robust_list(struct compat_robust_list_head __user *head,
|
||||
compat_size_t len);
|
||||
asmlinkage long
|
||||
compat_sys_get_robust_list(int pid, compat_uptr_t *head_ptr,
|
||||
compat_size_t __user *len_ptr);
|
||||
|
||||
long compat_sys_semctl(int first, int second, int third, void __user *uptr);
|
||||
long compat_sys_msgsnd(int first, int second, int third, void __user *uptr);
|
||||
|
@ -874,6 +874,9 @@ struct task_struct {
|
||||
int cpuset_mem_spread_rotor;
|
||||
#endif
|
||||
struct robust_list_head __user *robust_list;
|
||||
#ifdef CONFIG_COMPAT
|
||||
struct compat_robust_list_head __user *compat_robust_list;
|
||||
#endif
|
||||
|
||||
atomic_t fs_excl; /* holding fs exclusive resources */
|
||||
struct rcu_head rcu;
|
||||
|
Reference in New Issue
Block a user