yamahata
yamahata
6. Pal/src/start.S should be moved to appropriate place. It's not a part of PAL. but startup routine for Pal/{test, regression} 7. sort out compile environment. Pal is compiled for Pal...
slightly offtopic. IIRC, currently the path to host unix domain socket is in /tmp ? According to FHS, it should be /run/graphene/ (or /var/run/graphene/).
Due to subtle memory refernce, probably those memory can not easily freed by the exiting thread itself. Somehow remember it and free(or reuse) it later. Probably on the next thread...
It's not LibOS, but Pal/Linux. _DkThreadExit(). free(handle->thread.stack) is actually nop. handle isn't freed.
my bad, I scratch it. I missed put_thread() at the end of shim_async_helper().
When recycling zombie, its state needs to be re-initialized before receiving checkpoint. i.e. bring its statue into known (initial) state. There are several ways. For memory, One simple way is...
How about - stop NULL'fy by the caller - on second (or later) call of checkpoint callback, it's up to the callback to keep the previous one or free the...
When compiled with DEBUG, -O2 isn't specified. See Scripts/Makefile.configs. So this isn't surprise. Can you please check DEBUG + -O2?