diff options
| author | Richard Weinberger <richard@nod.at> | 2014-07-13 11:15:06 -0400 |
|---|---|---|
| committer | Richard Weinberger <richard@nod.at> | 2015-04-12 14:58:24 -0400 |
| commit | 7bd8301084dfaf9210f66142fadb62a2bee7588b (patch) | |
| tree | 64a067dfe5df1169b56f11bb26542c87b18fa66c /arch/frv | |
| parent | 61622aa399ecc65601331b946395ce095cb7c9d8 (diff) | |
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>
Diffstat (limited to 'arch/frv')
| -rw-r--r-- | arch/frv/include/asm/thread_info.h | 2 | ||||
| -rw-r--r-- | arch/frv/kernel/asm-offsets.c | 1 | ||||
| -rw-r--r-- | arch/frv/kernel/signal.c | 20 |
3 files changed, 4 insertions, 19 deletions
diff --git a/arch/frv/include/asm/thread_info.h b/arch/frv/include/asm/thread_info.h index 6b917f1c2955..ccba3b6ce918 100644 --- a/arch/frv/include/asm/thread_info.h +++ b/arch/frv/include/asm/thread_info.h | |||
| @@ -31,7 +31,6 @@ | |||
| 31 | 31 | ||
| 32 | struct thread_info { | 32 | struct thread_info { |
| 33 | struct task_struct *task; /* main task structure */ | 33 | struct task_struct *task; /* main task structure */ |
| 34 | struct exec_domain *exec_domain; /* execution domain */ | ||
| 35 | unsigned long flags; /* low level flags */ | 34 | unsigned long flags; /* low level flags */ |
| 36 | unsigned long status; /* thread-synchronous flags */ | 35 | unsigned long status; /* thread-synchronous flags */ |
| 37 | __u32 cpu; /* current CPU */ | 36 | __u32 cpu; /* current CPU */ |
| @@ -59,7 +58,6 @@ struct thread_info { | |||
| 59 | #define INIT_THREAD_INFO(tsk) \ | 58 | #define INIT_THREAD_INFO(tsk) \ |
| 60 | { \ | 59 | { \ |
| 61 | .task = &tsk, \ | 60 | .task = &tsk, \ |
| 62 | .exec_domain = &default_exec_domain, \ | ||
| 63 | .flags = 0, \ | 61 | .flags = 0, \ |
| 64 | .cpu = 0, \ | 62 | .cpu = 0, \ |
| 65 | .preempt_count = INIT_PREEMPT_COUNT, \ | 63 | .preempt_count = INIT_PREEMPT_COUNT, \ |
diff --git a/arch/frv/kernel/asm-offsets.c b/arch/frv/kernel/asm-offsets.c index 446e89d500cc..8414293f213a 100644 --- a/arch/frv/kernel/asm-offsets.c +++ b/arch/frv/kernel/asm-offsets.c | |||
| @@ -34,7 +34,6 @@ void foo(void) | |||
| 34 | { | 34 | { |
| 35 | /* offsets into the thread_info structure */ | 35 | /* offsets into the thread_info structure */ |
| 36 | OFFSET(TI_TASK, thread_info, task); | 36 | OFFSET(TI_TASK, thread_info, task); |
| 37 | OFFSET(TI_EXEC_DOMAIN, thread_info, exec_domain); | ||
| 38 | OFFSET(TI_FLAGS, thread_info, flags); | 37 | OFFSET(TI_FLAGS, thread_info, flags); |
| 39 | OFFSET(TI_STATUS, thread_info, status); | 38 | OFFSET(TI_STATUS, thread_info, status); |
| 40 | OFFSET(TI_CPU, thread_info, cpu); | 39 | OFFSET(TI_CPU, thread_info, cpu); |
diff --git a/arch/frv/kernel/signal.c b/arch/frv/kernel/signal.c index 336713ab4745..75c602dc874f 100644 --- a/arch/frv/kernel/signal.c +++ b/arch/frv/kernel/signal.c | |||
| @@ -174,7 +174,7 @@ static inline void __user *get_sigframe(struct ksignal *ksig, | |||
| 174 | static int setup_frame(struct ksignal *ksig, sigset_t *set) | 174 | static int setup_frame(struct ksignal *ksig, sigset_t *set) |
| 175 | { | 175 | { |
| 176 | struct sigframe __user *frame; | 176 | struct sigframe __user *frame; |
| 177 | int rsig, sig = ksig->sig; | 177 | int sig = ksig->sig; |
| 178 | 178 | ||
| 179 | set_fs(USER_DS); | 179 | set_fs(USER_DS); |
| 180 | 180 | ||
| @@ -183,13 +183,7 @@ static int setup_frame(struct ksignal *ksig, sigset_t *set) | |||
| 183 | if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame))) | 183 | if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame))) |
| 184 | return -EFAULT; | 184 | return -EFAULT; |
| 185 | 185 | ||
| 186 | rsig = sig; | 186 | if (__put_user(sig, &frame->sig) < 0) |
| 187 | if (sig < 32 && | ||
| 188 | __current_thread_info->exec_domain && | ||
| 189 | __current_thread_info->exec_domain->signal_invmap) | ||
| 190 | rsig = __current_thread_info->exec_domain->signal_invmap[sig]; | ||
| 191 | |||
| 192 | if (__put_user(rsig, &frame->sig) < 0) | ||
| 193 | return -EFAULT; | 187 | return -EFAULT; |
| 194 | 188 | ||
| 195 | if (setup_sigcontext(&frame->sc, set->sig[0])) | 189 | if (setup_sigcontext(&frame->sc, set->sig[0])) |
| @@ -255,7 +249,7 @@ static int setup_frame(struct ksignal *ksig, sigset_t *set) | |||
| 255 | static int setup_rt_frame(struct ksignal *ksig, sigset_t *set) | 249 | static int setup_rt_frame(struct ksignal *ksig, sigset_t *set) |
| 256 | { | 250 | { |
| 257 | struct rt_sigframe __user *frame; | 251 | struct rt_sigframe __user *frame; |
| 258 | int rsig, sig = ksig->sig; | 252 | int sig = ksig->sig; |
| 259 | 253 | ||
| 260 | set_fs(USER_DS); | 254 | set_fs(USER_DS); |
| 261 | 255 | ||
| @@ -264,13 +258,7 @@ static int setup_rt_frame(struct ksignal *ksig, sigset_t *set) | |||
| 264 | if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame))) | 258 | if (!access_ok(VERIFY_WRITE, frame, sizeof(*frame))) |
| 265 | return -EFAULT; | 259 | return -EFAULT; |
| 266 | 260 | ||
| 267 | rsig = sig; | 261 | if (__put_user(sig, &frame->sig) || |
| 268 | if (sig < 32 && | ||
| 269 | __current_thread_info->exec_domain && | ||
| 270 | __current_thread_info->exec_domain->signal_invmap) | ||
| 271 | rsig = __current_thread_info->exec_domain->signal_invmap[sig]; | ||
| 272 | |||
| 273 | if (__put_user(rsig, &frame->sig) || | ||
| 274 | __put_user(&frame->info, &frame->pinfo) || | 262 | __put_user(&frame->info, &frame->pinfo) || |
| 275 | __put_user(&frame->uc, &frame->puc)) | 263 | __put_user(&frame->uc, &frame->puc)) |
| 276 | return -EFAULT; | 264 | return -EFAULT; |
