diff options
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/include/asm/syscall.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/include/asm/syscall.h b/arch/powerpc/include/asm/syscall.h index efa7f0b879f3..23913e902fc3 100644 --- a/arch/powerpc/include/asm/syscall.h +++ b/arch/powerpc/include/asm/syscall.h | |||
@@ -30,7 +30,7 @@ static inline void syscall_rollback(struct task_struct *task, | |||
30 | static inline long syscall_get_error(struct task_struct *task, | 30 | static inline long syscall_get_error(struct task_struct *task, |
31 | struct pt_regs *regs) | 31 | struct pt_regs *regs) |
32 | { | 32 | { |
33 | return (regs->ccr & 0x1000) ? -regs->gpr[3] : 0; | 33 | return (regs->ccr & 0x10000000) ? -regs->gpr[3] : 0; |
34 | } | 34 | } |
35 | 35 | ||
36 | static inline long syscall_get_return_value(struct task_struct *task, | 36 | static inline long syscall_get_return_value(struct task_struct *task, |
@@ -44,10 +44,10 @@ static inline void syscall_set_return_value(struct task_struct *task, | |||
44 | int error, long val) | 44 | int error, long val) |
45 | { | 45 | { |
46 | if (error) { | 46 | if (error) { |
47 | regs->ccr |= 0x1000L; | 47 | regs->ccr |= 0x10000000L; |
48 | regs->gpr[3] = -error; | 48 | regs->gpr[3] = -error; |
49 | } else { | 49 | } else { |
50 | regs->ccr &= ~0x1000L; | 50 | regs->ccr &= ~0x10000000L; |
51 | regs->gpr[3] = val; | 51 | regs->gpr[3] = val; |
52 | } | 52 | } |
53 | } | 53 | } |