aboutsummaryrefslogtreecommitdiffstats
path: root/arch/microblaze/kernel
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-04-24 02:21:18 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-05-21 23:59:48 -0400
commit8314019141e4f7274ea4dc264a47bbb2e17c66dd (patch)
treee0fa7ba0873811c502758bba89b3b27325e7eeea /arch/microblaze/kernel
parent969a96168091f837645a674a9f7ed1a9aaa1424b (diff)
microblaze: drop 'oldset' argument of do_notify_resume()
never used... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/microblaze/kernel')
-rw-r--r--arch/microblaze/kernel/entry-nommu.S4
-rw-r--r--arch/microblaze/kernel/entry.S12
-rw-r--r--arch/microblaze/kernel/signal.c14
3 files changed, 11 insertions, 19 deletions
diff --git a/arch/microblaze/kernel/entry-nommu.S b/arch/microblaze/kernel/entry-nommu.S
index ea2dd42fdc22..75c3ea1f48a1 100644
--- a/arch/microblaze/kernel/entry-nommu.S
+++ b/arch/microblaze/kernel/entry-nommu.S
@@ -135,7 +135,6 @@ ret_from_intr:
1351: andi r11, r19, _TIF_SIGPENDING | _TIF_NOTIFY_RESUME 1351: andi r11, r19, _TIF_SIGPENDING | _TIF_NOTIFY_RESUME
136 beqid r11, no_intr_resched 136 beqid r11, no_intr_resched
137 addk r5, r1, r0 137 addk r5, r1, r0
138 addk r7, r0, r0
139 bralid r15, do_notify_resume 138 bralid r15, do_notify_resume
140 addk r6, r0, r0 139 addk r6, r0, r0
141 140
@@ -485,9 +484,8 @@ work_pending:
4851: andi r11, r19, _TIF_SIGPENDING | _TIF_NOTIFY_RESUME 4841: andi r11, r19, _TIF_SIGPENDING | _TIF_NOTIFY_RESUME
486 beqi r11, no_work_pending 485 beqi r11, no_work_pending
487 addk r5, r1, r0 486 addk r5, r1, r0
488 addik r7, r0, 1
489 bralid r15, do_notify_resume 487 bralid r15, do_notify_resume
490 addk r6, r0, r0 488 addik r6, r0, 1
491 bri no_work_pending 489 bri no_work_pending
492 490
493ENTRY(ret_to_user) 491ENTRY(ret_to_user)
diff --git a/arch/microblaze/kernel/entry.S b/arch/microblaze/kernel/entry.S
index 3cee9130a392..daff9e5e4a1f 100644
--- a/arch/microblaze/kernel/entry.S
+++ b/arch/microblaze/kernel/entry.S
@@ -434,9 +434,8 @@ C_ENTRY(ret_from_trap):
434 beqi r11, 1f; /* Signals to handle, handle them */ 434 beqi r11, 1f; /* Signals to handle, handle them */
435 435
436 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */ 436 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */
437 addi r7, r0, 1; /* Arg 3: int in_syscall */
438 bralid r15, do_notify_resume; /* Handle any signals */ 437 bralid r15, do_notify_resume; /* Handle any signals */
439 add r6, r0, r0; /* Arg 2: sigset_t *oldset */ 438 addi r6, r0, 1; /* Arg 2: int in_syscall */
440 439
441/* Finally, return to user state. */ 440/* Finally, return to user state. */
4421: set_bip; /* Ints masked for state restore */ 4411: set_bip; /* Ints masked for state restore */
@@ -637,9 +636,8 @@ C_ENTRY(ret_from_exc):
637 * the normal entry sequence, so that it may be safely restored 636 * the normal entry sequence, so that it may be safely restored
638 * (in a possibly modified form) after do_notify_resume returns. */ 637 * (in a possibly modified form) after do_notify_resume returns. */
639 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */ 638 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */
640 addi r7, r0, 0; /* Arg 3: int in_syscall */
641 bralid r15, do_notify_resume; /* Handle any signals */ 639 bralid r15, do_notify_resume; /* Handle any signals */
642 add r6, r0, r0; /* Arg 2: sigset_t *oldset */ 640 addi r6, r0, 0; /* Arg 2: int in_syscall */
643 641
644/* Finally, return to user state. */ 642/* Finally, return to user state. */
6451: set_bip; /* Ints masked for state restore */ 6431: set_bip; /* Ints masked for state restore */
@@ -735,10 +733,9 @@ ret_from_irq:
735 andi r11, r11, _TIF_SIGPENDING | _TIF_NOTIFY_RESUME; 733 andi r11, r11, _TIF_SIGPENDING | _TIF_NOTIFY_RESUME;
736 beqid r11, no_intr_resched 734 beqid r11, no_intr_resched
737/* Handle a signal return; Pending signals should be in r18. */ 735/* Handle a signal return; Pending signals should be in r18. */
738 addi r7, r0, 0; /* Arg 3: int in_syscall */
739 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */ 736 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */
740 bralid r15, do_notify_resume; /* Handle any signals */ 737 bralid r15, do_notify_resume; /* Handle any signals */
741 add r6, r0, r0; /* Arg 2: sigset_t *oldset */ 738 addi r6, r0, 0; /* Arg 2: int in_syscall */
742 739
743/* Finally, return to user state. */ 740/* Finally, return to user state. */
744no_intr_resched: 741no_intr_resched:
@@ -873,9 +870,8 @@ dbtrap_call: /* Return point for kernel/user entry + 8 because of rtsd r15, 8 */
873 beqi r11, 1f; /* Signals to handle, handle them */ 870 beqi r11, 1f; /* Signals to handle, handle them */
874 871
875 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */ 872 addik r5, r1, 0; /* Arg 1: struct pt_regs *regs */
876 addi r7, r0, 0; /* Arg 3: int in_syscall */
877 bralid r15, do_notify_resume; /* Handle any signals */ 873 bralid r15, do_notify_resume; /* Handle any signals */
878 add r6, r0, r0; /* Arg 2: sigset_t *oldset */ 874 addi r6, r0, 0; /* Arg 2: int in_syscall */
879 875
880/* Finally, return to user state. */ 876/* Finally, return to user state. */
8811: swi CURRENT_TASK, r0, PER_CPU(CURRENT_SAVE); /* save current */ 8771: swi CURRENT_TASK, r0, PER_CPU(CURRENT_SAVE); /* save current */
diff --git a/arch/microblaze/kernel/signal.c b/arch/microblaze/kernel/signal.c
index 449886db35a2..7f4c7bef1642 100644
--- a/arch/microblaze/kernel/signal.c
+++ b/arch/microblaze/kernel/signal.c
@@ -339,13 +339,14 @@ handle_signal(unsigned long sig, struct k_sigaction *ka,
339 * the kernel can handle, and then we build all the user-level signal handling 339 * the kernel can handle, and then we build all the user-level signal handling
340 * stack-frames in one go after that. 340 * stack-frames in one go after that.
341 */ 341 */
342static int do_signal(struct pt_regs *regs, sigset_t *oldset, int in_syscall) 342static void do_signal(struct pt_regs *regs, int in_syscall)
343{ 343{
344 siginfo_t info; 344 siginfo_t info;
345 int signr; 345 int signr;
346 struct k_sigaction ka; 346 struct k_sigaction ka;
347 sigset_t *oldset;
347#ifdef DEBUG_SIG 348#ifdef DEBUG_SIG
348 printk(KERN_INFO "do signal: %p %p %d\n", regs, oldset, in_syscall); 349 printk(KERN_INFO "do signal: %p %d\n", regs, in_syscall);
349 printk(KERN_INFO "do signal2: %lx %lx %ld [%lx]\n", regs->pc, regs->r1, 350 printk(KERN_INFO "do signal2: %lx %lx %ld [%lx]\n", regs->pc, regs->r1,
350 regs->r12, current_thread_info()->flags); 351 regs->r12, current_thread_info()->flags);
351#endif 352#endif
@@ -370,7 +371,7 @@ static int do_signal(struct pt_regs *regs, sigset_t *oldset, int in_syscall)
370 current_thread_info()->status &= 371 current_thread_info()->status &=
371 ~TS_RESTORE_SIGMASK; 372 ~TS_RESTORE_SIGMASK;
372 } 373 }
373 return 1; 374 return;
374 } 375 }
375 376
376 if (in_syscall) 377 if (in_syscall)
@@ -384,12 +385,9 @@ static int do_signal(struct pt_regs *regs, sigset_t *oldset, int in_syscall)
384 current_thread_info()->status &= ~TS_RESTORE_SIGMASK; 385 current_thread_info()->status &= ~TS_RESTORE_SIGMASK;
385 sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL); 386 sigprocmask(SIG_SETMASK, &current->saved_sigmask, NULL);
386 } 387 }
387
388 /* Did we come from a system call? */
389 return 0;
390} 388}
391 389
392void do_notify_resume(struct pt_regs *regs, sigset_t *oldset, int in_syscall) 390void do_notify_resume(struct pt_regs *regs, int in_syscall)
393{ 391{
394 /* 392 /*
395 * We want the common case to go fast, which 393 * We want the common case to go fast, which
@@ -401,7 +399,7 @@ void do_notify_resume(struct pt_regs *regs, sigset_t *oldset, int in_syscall)
401 return; 399 return;
402 400
403 if (test_thread_flag(TIF_SIGPENDING)) 401 if (test_thread_flag(TIF_SIGPENDING))
404 do_signal(regs, oldset, in_syscall); 402 do_signal(regs, in_syscall);
405 403
406 if (test_and_clear_thread_flag(TIF_NOTIFY_RESUME)) { 404 if (test_and_clear_thread_flag(TIF_NOTIFY_RESUME)) {
407 tracehook_notify_resume(regs); 405 tracehook_notify_resume(regs);