Commit Graph

233 Commits

Author SHA1 Message Date
4lDO2 9999bb6068 Add ThisGroup selector for kill. 2025-04-19 19:26:59 +02:00
4lDO2 747d11062b Rename KillTarget -> ProcKillTarget. 2025-04-19 19:26:58 +02:00
4lDO2 88848c25fe Add (backend todo) proc calls for kill+sigq. 2025-04-19 19:26:58 +02:00
4lDO2 f4a64cfbc3 Add setresguid. 2025-04-19 19:26:58 +02:00
4lDO2 48df8f5bba Add unstable interface for getting current thread fd. 2025-04-19 19:26:58 +02:00
4lDO2 9566a00ad1 WIP: waitpid and exit IPC calls. 2025-04-19 19:26:58 +02:00
4lDO2 4138b68117 Implement setrens and waitpid using procmgr. 2025-04-19 19:26:58 +02:00
4lDO2 0c1835a545 Implement waitpid using new SYS_CALL. 2025-04-19 19:26:58 +02:00
4lDO2 1cd450a9ae Implement get{r,e}{u,g}id. 2025-04-19 19:26:57 +02:00
4lDO2 ad5efd0f11 Reach init fork 2025-04-19 19:26:57 +02:00
4lDO2 26399569de Reach init w/proc manager. 2025-04-19 19:26:57 +02:00
4lDO2 b851422214 WIP: use proc manager in non-init fork. 2025-04-19 19:26:57 +02:00
4lDO2 91e58e8568 WIP: dynamic and static proc info 2025-04-19 19:26:57 +02:00
4lDO2 422a32690d Replace removed syscalls with redox-rt stubs. 2025-04-19 19:26:57 +02:00
Jeremy Soller 6e165e2ef0 Fix build on i686 2025-04-14 09:16:27 -06:00
bjorn3 17172720a7 Always pass offset to read_all and rename to pread_all 2025-04-12 21:49:42 +02:00
bjorn3 050edcdcc6 Pass PROT_READ to mmap when the segment has PF_R
This will allow the kernel to not add an implicit PROT_READ for every
mmap in the future.
2025-04-12 20:13:39 +02:00
bjorn3 095646517d Use a single mmap + read for each segment 2025-04-12 20:10:28 +02:00
bjorn3 d85fe6bdd5 Revert "Add a workaround for UB on arm64"
The kernel bug that caused this has been fixed.

This reverts commit 4d82cd90f8.
2025-04-12 17:14:01 +02:00
bjorn3 4d82cd90f8 Add a workaround for UB on arm64 2025-04-12 13:54:30 +02:00
bjorn3 52c429c207 Add a couple of PROT_READ
Even though they are only used for writing, it is still UB to create a
mutable reference to memory that can't be read.
2025-04-12 13:52:42 +02:00
bjorn3 20d77672e7 Add back asm_const feature
It isn't stable yet on the nightly used by redox
2025-03-30 21:04:58 +02:00
bjorn3 cf0fdb42ea Prevent initialize_freestanding from accidentally closing fd 0 2025-03-30 21:00:51 +02:00
bjorn3 facc643e18 Couple of misc improvements
Fix a bunch of warnings and clarify that execve will never return Ok by
using Infallible
2025-03-30 20:18:01 +02:00
Anhad Singh 20b9af633d chore: bump redox_syscall
Bumps redox_syscall to 0.5.8

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-12 13:50:04 +11:00
Andrey Turkin a4122753e6 Initial RISC-V64 support 2024-10-11 06:44:54 +03:00
4lDO2 ec216e56e2 Preserve umask across execv. 2024-09-25 20:28:50 +02:00
4lDO2 7fa5b679cc Move umask to a regular global variable.
The umask value is per-process, so because all POSIX open-like functions
now occur via relibc, this is valid.
2024-09-25 19:39:41 +02:00
4lDO2 79e1550215 Use only sig & 63 when checking SA_ONSTACK. 2024-09-24 19:34:53 +02:00
4lDO2 fed49a29af Properly deallocate thread stack on pthread_exit. 2024-09-24 19:34:53 +02:00
4lDO2 2b7a1ea94b Fix sigsuspend and add it to the sigqueue test. 2024-09-24 19:34:53 +02:00
4lDO2 9701e9c544 Add sigtimedwait to test, and various fixes. 2024-09-24 19:34:53 +02:00
4lDO2 5c78356290 Implement sigtimedwait on Redox. 2024-09-24 19:34:52 +02:00
4lDO2 8e5ddbd654 Implement sigsuspend. 2024-09-24 19:34:52 +02:00
4lDO2 33f0df3b27 Deduplicate and simplify sigprocmask code. 2024-09-24 19:34:52 +02:00
4lDO2 21d23092cd Mostly fix i686. 2024-09-24 19:34:52 +02:00
4lDO2 e82ced6e4e Fix non-edge-case signal handling on aarch64. 2024-09-24 19:34:52 +02:00
4lDO2 d6396cb4e8 Probably complete aarch64 asm.
It contains all signal logic x86_64 already has, although statistically
it will certainly have a few errors.
2024-09-24 19:34:52 +02:00
4lDO2 9a7cfaeaf1 Simplify aarch64 asm slightly. 2024-09-24 19:34:52 +02:00
4lDO2 e860a19e8f WIP: Update i686 signal asm. 2024-09-24 19:34:52 +02:00
4lDO2 09108634cf Set uc_stack properly.
POSIX does not appear to explicitly mention that this should be the
sigaltstack, but other Linux appears to treat it as the sigaltstack.
2024-09-24 19:34:52 +02:00
4lDO2 30caf55429 Set siginfo_t.si_{pid,uid} from kill signals too. 2024-09-24 19:34:51 +02:00
4lDO2 e5136e66c1 Draft of updated aarch64 signal trampoline. 2024-09-24 19:34:51 +02:00
4lDO2 d0db6a1ce0 Fix i686. 2024-09-24 19:34:51 +02:00
4lDO2 f6761407e5 Pass si_pid to all realtime signals. 2024-09-24 19:34:51 +02:00
4lDO2 6fe7c264f6 Pass si_code to siginfo_t struct. 2024-09-24 19:34:51 +02:00
4lDO2 cce268afbf Pass old stack pointer in uc_stack. 2024-09-24 19:34:51 +02:00
4lDO2 cdae79c129 Fix i686 compilation. 2024-09-24 19:34:51 +02:00
4lDO2 abc2ec7bb5 Add prototype ucontext_t support. 2024-09-24 19:34:51 +02:00
4lDO2 b48da5622d Add rtsig to i686 trampoline too. 2024-09-24 19:34:50 +02:00