]> Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
refactor: move sigframe/sigreturn from syscall.c to arch/x86/signal.c
authorTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 00:33:03 +0000 (21:33 -0300)
committerTulio A M Mendes <[email protected]>
Fri, 13 Feb 2026 02:44:55 +0000 (23:44 -0300)
commitc833c0b22f67bf6cce987e368e92c9f6163ad189
tree114687e76cb2cb87f4812a610759b1df69986e0a
parentd21f2609e373308527ad8669a0622c24c895eb06
refactor: move sigframe/sigreturn from syscall.c to arch/x86/signal.c

- New include/arch/x86/signal.h: shared struct sigframe + SIGFRAME_MAGIC
- New include/arch_signal.h: arch-agnostic arch_sigreturn() prototype
- New src/arch/x86/signal.c: x86 sigreturn implementation (eflags sanitize,
  CS/SS ring3 validation, IOPL clear)
- src/arch/x86/idt.c: use shared arch/x86/signal.h instead of local copy
- src/kernel/syscall.c: remove x86-specific sigframe struct and sigreturn_impl,
  call arch_sigreturn() via generic void* interface

No x86 signal frame knowledge remains in generic kernel code.
include/arch/x86/signal.h [new file with mode: 0644]
include/arch_signal.h [new file with mode: 0644]
src/arch/x86/idt.c
src/arch/x86/signal.c [new file with mode: 0644]
src/kernel/syscall.c