]> Projects (at) Tadryanom (dot) Me - AdrOS.git/commitdiff
fix: replace x86-specific child_regs.eax=0 with arch_regs_set_retval in fork_impl
authorTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 18:25:45 +0000 (15:25 -0300)
committerTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 18:25:45 +0000 (15:25 -0300)
src/kernel/syscall.c

index 709ba0b829927b2a1910970e7ed3b31ea27951a8..331a3ebe09ad15cf2b9275a03892df91ad5c0edb 100644 (file)
@@ -38,6 +38,7 @@ extern void x86_sysenter_init(void);
 #include "hal/cpu.h"
 #include "arch_signal.h"
 #include "arch_syscall.h"
+#include "arch_process.h"
 
 #include <stddef.h>
 
@@ -187,7 +188,7 @@ static int syscall_fork_impl(struct registers* regs) {
     if (!child_as) return -ENOMEM;
 
     struct registers child_regs = *regs;
-    child_regs.eax = 0;
+    arch_regs_set_retval(&child_regs, 0);
 
     struct process* child = process_fork_create(child_as, &child_regs);
     if (!child) {