IA64, PPC system call path audit patches

Robert Watson rwatson at FreeBSD.org
Fri Sep 1 08:29:01 UTC 2006


On Fri, 1 Sep 2006, Peter Chubb wrote:

> You've only caught the IA64 slow path system call entries.  The fast path is 
> highly optimised assembly language inside arch/ia64/kernel/fsys.S, that 
> avoids doing a trap at all.
>
> With a modern libc, syscall_via_break is only called for a very few system 
> calls.

Hmm.  I'm confused by the above comment -- I'm catching system calls on the 
kernel side of the system call invocation around the system call, not on the 
libc side.  I only see two system call demux points in the src/sys/ia64 tree:

./ia32/ia32_trap.c:             error = (*callp->sy_call)(td, args64);
./ia64/trap.c:  error = (*callp->sy_call)(td, args);

Both of which are covered in the patch I attached.  I'm under the impression 
that the different mechanisms to enter the kernel system call path converge 
prior to the system call table evaluation, in the kernel trap code.  Do I 
misunderstand?

Robert N M Watson
Computer Laboratory
University of Cambridge


More information about the freebsd-ia64 mailing list