Re: _syscall0 exists or obsolete in 2.6
From: Miguel Ojeda
Date: Wed Sep 05 2007 - 05:18:32 EST
On 9/5/07, Jaswinder Singh <jaswinderlinux@xxxxxxxxx> wrote:
> Hello all,
>
> I am trying to add syscall in include/asm/unistd.h:
Which platform?
>
> static inline _syscall0(int,my_sys_call);
>
> But I am getting following errors :
>
> AS arch/arm/kernel/entry-common.o
Assuming arm, I don't see that include/asm-arm/unistd.h has 622 lines.
> include/asm/unistd.h: Assembler messages:
> include/asm/unistd.h:622: Error: bad instruction `static inline int
> my_sys_call(void){register long __res_r0 __asm__("r0")'
> include/asm/unistd.h:622: Error: bad instruction `long __res'
> include/asm/unistd.h:622: Error: bad instruction `__asm__
> __volatile__("swi\t""(0x900000+322)""":"=r"(__res_r0)::"memory")'
> include/asm/unistd.h:622: Error: bad instruction `do {if((unsigned
> long)(__res)>=(unsigned long)(-129)){errno=-(__res)'
> include/asm/unistd.h:622: Error: junk at end of line, first
> unrecognized character is `}'
> include/asm/unistd.h:622: Error: junk at end of line, first
> unrecognized character is `}'
> include/asm/unistd.h:622: Error: junk at end of line, first
> unrecognized character is `}'
> make[1]: *** [arch/arm/kernel/entry-common.o] Error 1
> make: *** [arch/arm/kernel] Error 2
>
>
> This was working in older versions.
>
> I am curious _syscall0 still exists or obsolete in 2.6 linux.
>
> And I have noticed even if I commented _syscall0 macro, I do not get
> any errors so no body is using it , then why _syscall0 is in kernel
> header files and what is the substitute of _syscall0.
Well, if you look at
http://lxr.linux.no/ident?i=_syscall0
it seems it is pretty obsolete.
--
Miguel Ojeda
http://maxextreme.googlepages.com/index.htm
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/