L4_SYSCALL_INVOKE is a negative PC value?
Adam Lackorzynski
adam at os.inf.tu-dresden.de
Sun Sep 28 23:51:34 CEST 2014
On Sun Sep 28, 2014 at 03:26:53 +0000, Zachary wrote:
> Thank you, Adam. Based on your reply, I have another question.
>
> As the macro defined in L4Re source code, the branch adress is:
> L4_SYSCALL_INVOKE 0xFFFFFFF4
> L4_SYSCALL_MEM_OP 0xFFFFFFF0
>
> This means the "L4_SYSCALL_INVOKE" is at the higher address.
>
> And in asm_entry.h, the syscall table is:
> .macro GEN_SYSCALL_TABLE
> .align 4
> .global sys_call_table
> sys_call_table:
> ...
> .word sys_kdb_ke
> .word sys_ipc_wrapper
> .word sys_arm_mem_op
> ...
> .endm
>
> On the contrary, this table tells me that the "sys_ipc_wrapper" is at the
> lower address, so, why this happens?
The offsets into the table are just calculated so that it works. Please
see the usage sites of sys_call_table in the same file.
Adam
--
Adam adam at os.inf.tu-dresden.de
Lackorzynski http://os.inf.tu-dresden.de/~adam/
More information about the l4-hackers
mailing list