The time has come for a kernel interfacing library layer

Joerg Sonnenberger joerg at britannica.bec.de
Mon May 9 08:56:15 PDT 2005


On Mon, May 09, 2005 at 08:15:16AM -0700, Matthew Dillon wrote:
> :>     The problem is where does the function address of cerror come
> :>     from ?  This library is implementing a system call, the function returns
> :>     to the caller, not to cerror.  I definitely do not want to hack up 
> :>     the stack frame.
> :
> :I wanted to put an intermediate stack frame there. We need it anyway for
> :the internal compatibility handling in libc, even it adds another stack
> :frame for the "normal" case.
> :
> :Joerg
> 
>     It's already too complex.  I don't want to put another call layer in 
>     there.

OK, what about the following framing of the syscall:

__write:
	movl __cerror, %eax
	jmp __DF_write

__DF_write:
	pushl %eax
	; actual magic here
	ret

Joerg





More information about the Kernel mailing list