Commit 257a629a authored by David S. Miller's avatar David S. Miller

[SPARC]: Fix syscall return value errno comparison.

This was hosing all restart block handling.

Noticed by Richard Mortimer.
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 31431fe7
...@@ -1508,7 +1508,7 @@ syscall_is_too_hard: ...@@ -1508,7 +1508,7 @@ syscall_is_too_hard:
.globl ret_sys_call .globl ret_sys_call
ret_sys_call: ret_sys_call:
ld [%curptr + TI_FLAGS], %l6 ld [%curptr + TI_FLAGS], %l6
cmp %o0, -ENOIOCTLCMD cmp %o0, -ERESTART_RESTARTBLOCK
ld [%sp + STACKFRAME_SZ + PT_PSR], %g3 ld [%sp + STACKFRAME_SZ + PT_PSR], %g3
set PSR_C, %g2 set PSR_C, %g2
bgeu 1f bgeu 1f
...@@ -1587,7 +1587,7 @@ solaris_syscall: ...@@ -1587,7 +1587,7 @@ solaris_syscall:
st %o0, [%sp + STACKFRAME_SZ + PT_I0] st %o0, [%sp + STACKFRAME_SZ + PT_I0]
set PSR_C, %g2 set PSR_C, %g2
cmp %o0, -ENOIOCTLCMD cmp %o0, -ERESTART_RESTARTBLOCK
bgeu 1f bgeu 1f
ld [%sp + STACKFRAME_SZ + PT_PSR], %g3 ld [%sp + STACKFRAME_SZ + PT_PSR], %g3
...@@ -1678,7 +1678,7 @@ bsd_is_too_hard: ...@@ -1678,7 +1678,7 @@ bsd_is_too_hard:
st %o0, [%sp + STACKFRAME_SZ + PT_I0] st %o0, [%sp + STACKFRAME_SZ + PT_I0]
set PSR_C, %g2 set PSR_C, %g2
cmp %o0, -ENOIOCTLCMD cmp %o0, -ERESTART_RESTARTBLOCK
bgeu 1f bgeu 1f
ld [%sp + STACKFRAME_SZ + PT_PSR], %g3 ld [%sp + STACKFRAME_SZ + PT_PSR], %g3
......
...@@ -1778,7 +1778,7 @@ ret_sys_call: ...@@ -1778,7 +1778,7 @@ ret_sys_call:
stx %l0, [%curptr + TI_FLAGS] stx %l0, [%curptr + TI_FLAGS]
1: 1:
cmp %o0, -ENOIOCTLCMD cmp %o0, -ERESTART_RESTARTBLOCK
bgeu,pn %xcc, 1f bgeu,pn %xcc, 1f
andcc %l0, _TIF_SYSCALL_TRACE, %l6 andcc %l0, _TIF_SYSCALL_TRACE, %l6
80: 80:
......
...@@ -109,7 +109,7 @@ ret_from_solaris: ...@@ -109,7 +109,7 @@ ret_from_solaris:
sra %o0, 0, %o0 sra %o0, 0, %o0
mov %ulo(TSTATE_XCARRY | TSTATE_ICARRY), %g2 mov %ulo(TSTATE_XCARRY | TSTATE_ICARRY), %g2
ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %g3 ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %g3
cmp %o0, -ENOIOCTLCMD cmp %o0, -ERESTART_RESTARTBLOCK
sllx %g2, 32, %g2 sllx %g2, 32, %g2
bgeu,pn %xcc, 1f bgeu,pn %xcc, 1f
andcc %l6, _TIF_SYSCALL_TRACE, %l6 andcc %l6, _TIF_SYSCALL_TRACE, %l6
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment