Ok, added a github issue (34) with the commit. Alex. On 26.08.2016 01:20, Adrian Danis wrote:
I cannot really see a nicer way to implement it, so I think it's fine if you want to put it up as a PR.
Adrian
On Fri 26-Aug-2016 7:15 AM, Alexander Boettcher wrote:
Hi Adrian,
On 24.08.2016 01:35, Adrian Danis wrote:
The position independent syscall code looks good. If you could perform a similar change to how OKL4 conditionally handles PIC then this would definitely be fine to go in. ok. I adjusted the bindings depending on __pic__, which is set when -fpic or -fPIC is used. Please have a look and give advices what should be adjusted.
Thanks,
Alex.
[0] https://github.com/alex-ab/genode/blob/sel4_syscall/sel4.patch
Adrian
On Tue 23-Aug-2016 7:35 PM, Alexander Boettcher wrote:
Hello,
we have now mainly all running with shared libraries on Genode/seL4, so that we had to adjust the syscall bindings to be position independent [0]. Now is the time to try to get in a form that it may get upstream.
According to this post:
On 29.10.2014 02:33, Adrian Danis wrote:
Position independent code is a bit of a trickier issue. Presently we have no desire to use PIC, so copping a performance hit (incredibly small it may be) is undesirable. I think the best option here would be to make support of PIC at user level a build configuration option, and then make the stubs conditionally build in the additional ebx save/restore code. I do not know if attempting such conditional building will end up turning the assembly into an unreadable mess, but it would resolve the performance argument at least. The 'correct' way to do this with fitting into the current seL4 build system setup would be to add a configuration option to tools/common/Kconfig, use that variable to do the conditional compilation in syscalls.h and have tools/common/common.mk generate the -fPIC / -fno-PIC flags. If you can come up with a nice way of conditionally building both PIC and non-PIC versions of what is in syscalls.h then we would certainly accept it. you would prefer to have, depending on some define, the syscall binding adjusted.
In OKL4 there were already such define magic, see beginning of [1] e.g. There, depending on "__pic__", different L4_SAVE_REG/L4_RESTORE_REG defines are prepared and later on used by the assembler parts. Is this the way to go ? Thanks for any suggestions.
Cheers,
Alexander Boettcher.
[0] https://github.com/genodelabs/genode/blob/master/repos/base-sel4/patches/sys...
[1] https://github.com/genodelabs/genode/blob/master/repos/base-okl4/patches/sys...
_______________________________________________ Devel mailing list Devel@sel4.systems https://sel4.systems/lists/listinfo/devel