Rename proc_spawn_thread to proc_clone

This commit is contained in:
2026-01-19 22:01:44 +01:00
parent 38a43b59b0
commit a29233f853
7 changed files with 13 additions and 14 deletions

View File

@@ -9,7 +9,7 @@
#define SYS_PROC_DROP_RESOURCE 6
#define SYS_PROC_MUTEX_LOCK 8
#define SYS_PROC_MUTEX_UNLOCK 9
#define SYS_PROC_SPAWN_THREAD 10
#define SYS_PROC_CLONE 10
#define SYS_PROC_SCHED 11
#define SYS_PROC_TRANSLATE_V2P 12

View File

@@ -34,7 +34,7 @@ int make_thread (void (*fn) (void)) {
return -ST_OOM_ERROR;
uintptr_t stack_top = (uintptr_t)stack + stack_size;
return proc_spawn_thread (stack_top, stack_size, (void*)fn);
return proc_clone (stack_top, stack_size, (void*)fn);
}
void app_main (void) {

View File

@@ -106,7 +106,7 @@ struct proc* proc_from_elf (uint8_t* elf_contents) {
return proc;
}
struct proc* proc_spawn_thread (struct proc* proto, uintptr_t vstack_top, size_t stack_size,
struct proc* proc_clone (struct proc* proto, uintptr_t vstack_top, size_t stack_size,
uintptr_t entry) {
struct limine_hhdm_response* hhdm = limine_hhdm_request.response;
spin_lock_ctx_t ctxprt, ctxrs;

View File

@@ -6,7 +6,7 @@
struct proc;
struct proc* proc_from_elf (uint8_t* elf_contents);
struct proc* proc_spawn_thread (struct proc* proto, uintptr_t vstack_top, size_t stack_size,
struct proc* proc_clone (struct proc* proto, uintptr_t vstack_top, size_t stack_size,
uintptr_t entry);
void proc_cleanup (struct proc* proc);

View File

@@ -212,15 +212,15 @@ DEFINE_SYSCALL (sys_proc_drop_resource) {
return ST_OK;
}
/* int proc_spawn_thread (uintptr_t vstack_top, size_t stack_size, void* entry) */
DEFINE_SYSCALL (sys_proc_spawn_thread) {
/* int proc_clone (uintptr_t vstack_top, size_t stack_size, void* entry) */
DEFINE_SYSCALL (sys_proc_clone) {
uintptr_t vstack_top = a1;
size_t stack_size = (size_t)a2;
uintptr_t entry = a3;
struct cpu* cpu = proc->cpu;
struct proc* new = proc_spawn_thread (proc, vstack_top, stack_size, entry);
struct proc* new = proc_clone (proc, vstack_top, stack_size, entry);
DEBUG ("new=%p\n", new);
@@ -273,7 +273,7 @@ static syscall_handler_func_t handler_table[] = {
[SYS_PROC_DROP_RESOURCE] = &sys_proc_drop_resource,
[SYS_PROC_MUTEX_LOCK] = &sys_proc_mutex_lock,
[SYS_PROC_MUTEX_UNLOCK] = &sys_proc_mutex_unlock,
[SYS_PROC_SPAWN_THREAD] = &sys_proc_spawn_thread,
[SYS_PROC_CLONE] = &sys_proc_clone,
[SYS_PROC_SCHED] = &sys_proc_sched,
[SYS_PROC_TRANSLATE_V2P] = &sys_proc_translate_v2p,
};

View File

@@ -33,9 +33,8 @@ int proc_mutex_unlock (int mutex_rid, int vis) {
return syscall (SYS_PROC_MUTEX_UNLOCK, (uintptr_t)mutex_rid, (uintptr_t)vis, 0, 0, 0, 0);
}
int proc_spawn_thread (uintptr_t vstack_top, size_t stack_size, void* entry) {
return syscall (SYS_PROC_SPAWN_THREAD, vstack_top, (uintptr_t)stack_size, (uintptr_t)entry, 0, 0,
0);
int proc_clone (uintptr_t vstack_top, size_t stack_size, void* entry) {
return syscall (SYS_PROC_CLONE, vstack_top, (uintptr_t)stack_size, (uintptr_t)entry, 0, 0, 0);
}
int proc_translate_v2p (uintptr_t vaddr, uintptr_t* out_paddr) {

View File

@@ -27,7 +27,7 @@ int proc_create_resource (int rid, int type, int vis, void* buffer);
int proc_drop_resource (int rid, int vis);
int proc_mutex_lock (int mutex_rid, int vis);
int proc_mutex_unlock (int mutex_rid, int vis);
int proc_spawn_thread (uintptr_t vstack_top, size_t stack_size, void* entry);
int proc_clone (uintptr_t vstack_top, size_t stack_size, void* entry);
int proc_sched (void);
int proc_translate_v2p (uintptr_t vaddr, uintptr_t* out_paddr);