Subject: Re: [PATCH] Wire up *at syscalls

From: Andreas Schwab <[email-masked]>
Date: Fri, 28 Apr 2006 16:42:32 +0200

David Woodhouse <[email-masked]> writes:

> On Fri, 2006-04-28 at 17:31 +1000, Paul Mackerras wrote:
>> Nice idea, but you didn't change the syscall entry path to multiply
>> the syscall number by 24 instead of 16. 
>
> Indeed. Neither did I wire up the spu callbacks. It wasn't meant to be
> applied as-is.
>
>>  It would be nice to have a way to do something like that but generate
>> two separate tables instead of a single table with 3 entries per
>> syscall. 
>
> Arnd apparently tried that once and it was icky.

void *spu_syscall_table[] = {
#define SYSCALL(func)		sys_ni_syscall
#define SYSCALL_SPU(func)       sys_##func
#define COMPAT_SYS(func)	sys_ni_syscall
#define COMPAT_SYS_SPU(func)	sys_##func
#define PPC_SYS(func)		sys_ni_syscall
#define PPC_SYS_SPU(func)	ppc_##func
#define OLDSYS(func)		sys_ni_syscall
#define SYS32ONLY(func)		sys_ni_syscall
#define SYSX(f, f3264, f32)	f
#include <asm/systbl.h>
}

where <asm/systbl.h> contains the bopy of arch/powerpc/kernel/systbl.S
after _GLOBAL(sys_call_table), and the latter is changed to include the
former.

Andreas.

-- 
Andreas Schwab, SuSE Labs, [email-masked]
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."