mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-04 17:44:14 +08:00
frv: Remove signal translation and exec_domain
As execution domain support is gone we can remove signal translation from the signal code and remove exec_domain from thread_info. Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
parent
61622aa399
commit
7bd8301084
@ -151,7 +151,7 @@ setup_rt_frame(struct ksignal *ksig, sigset_t *set, struct pt_regs *regs)
|
||||
|
||||
frame = get_sigframe(ksig, sizeof(*frame));
|
||||
|
||||
err |= __put_user(sig->sig, &frame->sig);
|
||||
err |= __put_user(ksig->sig, &frame->sig);
|
||||
|
||||
err |= __put_user(&frame->info, &frame->pinfo);
|
||||
err |= __put_user(&frame->uc, &frame->puc);
|
||||
|
@ -31,7 +31,6 @@
|
||||
|
||||
struct thread_info {
|
||||
struct task_struct *task; /* main task structure */
|
||||
struct exec_domain *exec_domain; /* execution domain */
|
||||
unsigned long flags; /* low level flags */
|
||||
unsigned long status; /* thread-synchronous flags */
|
||||
__u32 cpu; /* current CPU */
|
||||
@ -59,7 +58,6 @@ struct thread_info {
|
||||
#define INIT_THREAD_INFO(tsk) \
|
||||
{ \
|
||||
.task = &tsk, \
|
||||
.exec_domain = &default_exec_domain, \
|
||||
.flags = 0, \
|
||||
.cpu = 0, \
|
||||
.preempt_count = INIT_PREEMPT_COUNT, \
|
||||
|
@ -34,7 +34,6 @@ void foo(void)
|
||||
{
|
||||
/* offsets into the thread_info structure */
|
||||
OFFSET(TI_TASK, thread_info, task);
|
||||
OFFSET(TI_EXEC_DOMAIN, thread_info, exec_domain);
|
||||
OFFSET(TI_FLAGS, thread_info, flags);
|
||||
OFFSET(TI_STATUS, thread_info, status);
|
||||
OFFSET(TI_CPU, thread_info, cpu);
|
||||
|
@ -174,7 +174,7 @@ static inline void __user *get_sigframe(struct ksignal *ksig,
|
||||
static int setup_frame(struct ksignal *ksig, sigset_t *set)
|
||||
{
|
||||
struct sigframe __user *frame;
|
||||
int rsig, sig = ksig->sig;
|
||||
int sig = ksig->sig;
|
||||
|
||||
set_fs(USER_DS);
|
||||
|
||||
@ -183,13 +183,7 @@ static int setup_frame(struct ksignal *ksig, sigset_t *set)
|
||||
if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame)))
|
||||
return -EFAULT;
|
||||
|
||||
rsig = sig;
|
||||
if (sig < 32 &&
|
||||
__current_thread_info->exec_domain &&
|
||||
__current_thread_info->exec_domain->signal_invmap)
|
||||
rsig = __current_thread_info->exec_domain->signal_invmap[sig];
|
||||
|
||||
if (__put_user(rsig, &frame->sig) < 0)
|
||||
if (__put_user(sig, &frame->sig) < 0)
|
||||
return -EFAULT;
|
||||
|
||||
if (setup_sigcontext(&frame->sc, set->sig[0]))
|
||||
@ -255,7 +249,7 @@ static int setup_frame(struct ksignal *ksig, sigset_t *set)
|
||||
static int setup_rt_frame(struct ksignal *ksig, sigset_t *set)
|
||||
{
|
||||
struct rt_sigframe __user *frame;
|
||||
int rsig, sig = ksig->sig;
|
||||
int sig = ksig->sig;
|
||||
|
||||
set_fs(USER_DS);
|
||||
|
||||
@ -264,13 +258,7 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set)
|
||||
if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame)))
|
||||
return -EFAULT;
|
||||
|
||||
rsig = sig;
|
||||
if (sig < 32 &&
|
||||
__current_thread_info->exec_domain &&
|
||||
__current_thread_info->exec_domain->signal_invmap)
|
||||
rsig = __current_thread_info->exec_domain->signal_invmap[sig];
|
||||
|
||||
if (__put_user(rsig, &frame->sig) ||
|
||||
if (__put_user(sig, &frame->sig) ||
|
||||
__put_user(&frame->info, &frame->pinfo) ||
|
||||
__put_user(&frame->uc, &frame->puc))
|
||||
return -EFAULT;
|
||||
|
Loading…
Reference in New Issue
Block a user