[set,get,make,swap]context from glibc for amd64 implementation and question for Norman
Alexander Tormasov
a.tormasov at innopolis.ru
Thu Mar 18 18:50:35 CET 2021
Forget to mention that current state of golang/libgo 21.02 support is not intended for evaluation
> After this 'alloc_secondary_stack' caused a page fault, because
> 'stack->top' will give the stack beginning aligned to 16 byte + 8 byte
> for x86. In case the stack size is a multiple of page size, this causes
> a page fault in 'memset' because the page at the end of the stack is
> crossed. Adding 16 byte to the allocation size quick fixes the problem.
> In the next iteration we received a page fault at a high address in
> 'src/lib/gcc/libgo/runtime/proc.c:610' in 'makeGContext' caused by the
> value of 'uc'. We have not debugged this any further for now.
I start porting of it from old version and it is in transit state now.
As you can see, I do not yet finish debug of new version of libgo, so, no reasons in this moment to check it.
for *context functions I add separate test here, please use it
https://github.com/tor-m6/genode/commit/73649e4a5d98cf83c8bed56ca17f300dd8a06971
I think that good idea to finalise context/anon parts of required genode core functionality
(move them to separate support lib) and only after I will return to libgo fixes.
More information about the users
mailing list