]> err.no Git - linux-2.6/commit
sh: Fix syscall tracing ordering.
authorStuart Menefy <stuart.menefy@st.com>
Fri, 24 Nov 2006 04:01:36 +0000 (13:01 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 6 Dec 2006 01:45:38 +0000 (10:45 +0900)
commite0969e0c9b609fdfe217e34f3e046179ffe88eb6
treee0769039173233ea75d4e9ed87bbcfec690dc446
parentc9f0b1c1410e9e637b819c5050fc8c1f1971e178
sh: Fix syscall tracing ordering.

The implementation of system call tracing in the kernel has a
couple of ordering problems:

 - the validity of the system call number is checked before
   calling out to system call tracing code, and should be
   done after

 - the system call number used when tracing is the one the
   system call was invoked with, while the system call tracing
   code can legitimatly change the call number (for example
   strace permutes fork into clone)

This patch fixes both of these problems, and also reoders the
code slightly to make the direct path through the code the
common case.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/kernel/entry-common.S