Commit f5e83688 authored by Ard Biesheuvel's avatar Ard Biesheuvel

kernel: Drop IA64 support from sig_fault handlers

Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
parent cf8e8658
...@@ -303,20 +303,11 @@ static inline void kernel_signal_stop(void) ...@@ -303,20 +303,11 @@ static inline void kernel_signal_stop(void)
schedule(); schedule();
} }
#ifdef __ia64__
# define ___ARCH_SI_IA64(_a1, _a2, _a3) , _a1, _a2, _a3
#else
# define ___ARCH_SI_IA64(_a1, _a2, _a3)
#endif
int force_sig_fault_to_task(int sig, int code, void __user *addr int force_sig_fault_to_task(int sig, int code, void __user *addr,
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr) struct task_struct *t);
, struct task_struct *t); int force_sig_fault(int sig, int code, void __user *addr);
int force_sig_fault(int sig, int code, void __user *addr int send_sig_fault(int sig, int code, void __user *addr, struct task_struct *t);
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr));
int send_sig_fault(int sig, int code, void __user *addr
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr)
, struct task_struct *t);
int force_sig_mceerr(int code, void __user *, short); int force_sig_mceerr(int code, void __user *, short);
int send_sig_mceerr(int code, void __user *, short, struct task_struct *); int send_sig_mceerr(int code, void __user *, short, struct task_struct *);
......
...@@ -68,11 +68,6 @@ union __sifields { ...@@ -68,11 +68,6 @@ union __sifields {
/* SIGILL, SIGFPE, SIGSEGV, SIGBUS, SIGTRAP, SIGEMT */ /* SIGILL, SIGFPE, SIGSEGV, SIGBUS, SIGTRAP, SIGEMT */
struct { struct {
void __user *_addr; /* faulting insn/memory ref. */ void __user *_addr; /* faulting insn/memory ref. */
#ifdef __ia64__
int _imm; /* immediate value for "break" */
unsigned int _flags; /* see ia64 si_flags */
unsigned long _isr; /* isr */
#endif
#define __ADDR_BND_PKEY_PAD (__alignof__(void *) < sizeof(short) ? \ #define __ADDR_BND_PKEY_PAD (__alignof__(void *) < sizeof(short) ? \
sizeof(short) : __alignof__(void *)) sizeof(short) : __alignof__(void *))
......
...@@ -1718,9 +1718,8 @@ void force_sigsegv(int sig) ...@@ -1718,9 +1718,8 @@ void force_sigsegv(int sig)
force_sig(SIGSEGV); force_sig(SIGSEGV);
} }
int force_sig_fault_to_task(int sig, int code, void __user *addr int force_sig_fault_to_task(int sig, int code, void __user *addr,
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr) struct task_struct *t)
, struct task_struct *t)
{ {
struct kernel_siginfo info; struct kernel_siginfo info;
...@@ -1729,24 +1728,15 @@ int force_sig_fault_to_task(int sig, int code, void __user *addr ...@@ -1729,24 +1728,15 @@ int force_sig_fault_to_task(int sig, int code, void __user *addr
info.si_errno = 0; info.si_errno = 0;
info.si_code = code; info.si_code = code;
info.si_addr = addr; info.si_addr = addr;
#ifdef __ia64__
info.si_imm = imm;
info.si_flags = flags;
info.si_isr = isr;
#endif
return force_sig_info_to_task(&info, t, HANDLER_CURRENT); return force_sig_info_to_task(&info, t, HANDLER_CURRENT);
} }
int force_sig_fault(int sig, int code, void __user *addr int force_sig_fault(int sig, int code, void __user *addr)
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr))
{ {
return force_sig_fault_to_task(sig, code, addr return force_sig_fault_to_task(sig, code, addr, current);
___ARCH_SI_IA64(imm, flags, isr), current);
} }
int send_sig_fault(int sig, int code, void __user *addr int send_sig_fault(int sig, int code, void __user *addr, struct task_struct *t)
___ARCH_SI_IA64(int imm, unsigned int flags, unsigned long isr)
, struct task_struct *t)
{ {
struct kernel_siginfo info; struct kernel_siginfo info;
...@@ -1755,11 +1745,6 @@ int send_sig_fault(int sig, int code, void __user *addr ...@@ -1755,11 +1745,6 @@ int send_sig_fault(int sig, int code, void __user *addr
info.si_errno = 0; info.si_errno = 0;
info.si_code = code; info.si_code = code;
info.si_addr = addr; info.si_addr = addr;
#ifdef __ia64__
info.si_imm = imm;
info.si_flags = flags;
info.si_isr = isr;
#endif
return send_sig_info(info.si_signo, &info, t); return send_sig_info(info.si_signo, &info, t);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment