622e5b26b3
When executing fork() via a system call, the parent's stack gets corrupted by the child, as during exception return the child loads the parent's stack pointer from the context save area. This happens because the full parent stack (including what has been pushed during the system call) is copied to the child. What should be copied, is only the user stack of the parent (the kernel stack is not interesting). Fix this by only copying the parent's user stack to the child; and make the child return directly to userspace (not via dispatch_syscall). |
||
---|---|---|
.. | ||
include | ||
src | ||
CMakeLists.txt | ||
Kconfig |