[PARISC] Fix bug when syscall nr is __NR_Linux_syscalls

Kyle McMartin <[email protected]>
Newsgroups gmane.linux.ports.hppa
Message-ID <[email protected]>
From: Kyle McMartin <[email protected]>

The bug was that we were comparing __NR_syscalls to be greater or equal
to the syscall number stored in %r20. __NR_syscalls is one greater than
the last syscall though, so we're loading one entry beyond the end of the
syscall table, and trying to jump to it.

Fix this by only checking that we're greater, alternatively, we could
have compared to (__NR_Linux_syscalls - 1)

Signed-off-by: Kyle McMartin <[email protected]>
---
 arch/parisc/kernel/syscall.S |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/parisc/kernel/syscall.S b/arch/parisc/kernel/syscall.S
index 91b2a48..56f6231 100644
--- a/arch/parisc/kernel/syscall.S
+++ b/arch/parisc/kernel/syscall.S
@@ -198,7 +198,7 @@ linux_gateway_entry:
 	ldil	L%sys_call_table, %r1
 	ldo     R%sys_call_table(%r1), %r19
 #endif	
-	comiclr,>>=	__NR_Linux_syscalls, %r20, %r0
+	comiclr,>>	__NR_Linux_syscalls, %r20, %r0
 	b,n	.Lsyscall_nosys
 	
 	LDREGX  %r20(%r19), %r19
-- 
1.5.1.3
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.