aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sparc64/kernel')
-rw-r--r--arch/sparc64/kernel/entry.S7
-rw-r--r--arch/sparc64/kernel/power.c4
2 files changed, 6 insertions, 5 deletions
diff --git a/arch/sparc64/kernel/entry.S b/arch/sparc64/kernel/entry.S
index 11a848402fb1..710002991888 100644
--- a/arch/sparc64/kernel/entry.S
+++ b/arch/sparc64/kernel/entry.S
@@ -1657,13 +1657,10 @@ ret_sys_call:
1657 /* Check if force_successful_syscall_return() 1657 /* Check if force_successful_syscall_return()
1658 * was invoked. 1658 * was invoked.
1659 */ 1659 */
1660 ldub [%curptr + TI_SYS_NOERROR], %l0 1660 ldub [%curptr + TI_SYS_NOERROR], %l2
1661 brz,pt %l0, 1f 1661 brnz,a,pn %l2, 80f
1662 nop
1663 ba,pt %xcc, 80f
1664 stb %g0, [%curptr + TI_SYS_NOERROR] 1662 stb %g0, [%curptr + TI_SYS_NOERROR]
1665 1663
16661:
1667 cmp %o0, -ERESTART_RESTARTBLOCK 1664 cmp %o0, -ERESTART_RESTARTBLOCK
1668 bgeu,pn %xcc, 1f 1665 bgeu,pn %xcc, 1f
1669 andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %l6 1666 andcc %l0, (_TIF_SYSCALL_TRACE|_TIF_SECCOMP|_TIF_SYSCALL_AUDIT), %l6
diff --git a/arch/sparc64/kernel/power.c b/arch/sparc64/kernel/power.c
index 9e8362ea3104..30bcaf58e3ab 100644
--- a/arch/sparc64/kernel/power.c
+++ b/arch/sparc64/kernel/power.c
@@ -14,6 +14,7 @@
14#include <linux/signal.h> 14#include <linux/signal.h>
15#include <linux/delay.h> 15#include <linux/delay.h>
16#include <linux/interrupt.h> 16#include <linux/interrupt.h>
17#include <linux/pm.h>
17 18
18#include <asm/system.h> 19#include <asm/system.h>
19#include <asm/ebus.h> 20#include <asm/ebus.h>
@@ -70,6 +71,9 @@ void machine_power_off(void)
70 machine_halt(); 71 machine_halt();
71} 72}
72 73
74void (*pm_power_off)(void) = machine_power_off;
75EXPORT_SYMBOL(pm_power_off);
76
73#ifdef CONFIG_PCI 77#ifdef CONFIG_PCI
74static int powerd(void *__unused) 78static int powerd(void *__unused)
75{ 79{