Implement argument_ptr () syscall for handling process arguments
All checks were successful
Build documentation / build-and-deploy (push) Successful in 37s
All checks were successful
Build documentation / build-and-deploy (push) Successful in 37s
This commit is contained in:
@@ -5,13 +5,15 @@
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
int process_spawn (process_func_t func) {
|
||||
int process_spawn (process_func_t func, void* argument_ptr) {
|
||||
void* stack = malloc (PROC_STACK_SIZE);
|
||||
if (stack == NULL)
|
||||
return -ST_OOM_ERROR;
|
||||
|
||||
uintptr_t top = (uintptr_t)stack + PROC_STACK_SIZE;
|
||||
return clone (top, func);
|
||||
return clone (top, func, argument_ptr);
|
||||
}
|
||||
|
||||
int process_quit (void) { return quit (); }
|
||||
|
||||
void* process_argument (void) { return argument_ptr (); }
|
||||
|
||||
Reference in New Issue
Block a user