Commit Graph

2738 Commits

Author SHA1 Message Date
4lDO2 0c1835a545 Implement waitpid using new SYS_CALL. 2025-04-19 19:26:58 +02:00
4lDO2 bd68da3df9 Fix relibc exec thisproc usage. 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
4lDO2 31570e99ab Patch redox_syscall. 2025-04-19 19:26:57 +02:00
Jeremy Soller 10cc54bbd4 Merge branch 'master' into 'master'
tcb: fix non x86

See merge request redox-os/relibc!650
2025-04-19 16:51:43 +00:00
Anhad Singh c64058c8b7 tcb: aarch64 2025-04-20 02:41:35 +10:00
Jeremy Soller 228d53dcd5 More improvements for relocation handling 2025-04-18 16:03:09 -06:00
Jeremy Soller 03f863d742 ld_so: better support for other arches 2025-04-18 14:26:39 -06:00
Jeremy Soller 310b097da6 Fix check for Sym size 2025-04-18 12:39:27 -06:00
Jeremy Soller 3cd57bde69 Fix deprecated option in rustfmt.toml 2025-04-18 12:38:39 -06:00
Jeremy Soller b48c2f74a3 Merge branch 'add-err_h' into 'master'
Implement BSD's err.h

See merge request redox-os/relibc!646
2025-04-18 12:34:46 +00:00
Josh Megnauth a4826bd48c Implement BSD's err.h 2025-04-18 12:34:45 +00:00
Jeremy Soller 8312a67d17 Set ld.so path based on target 2025-04-17 09:34:24 -06:00
Jeremy Soller 6e165e2ef0 Fix build on i686 2025-04-14 09:16:27 -06:00
Jeremy Soller 2f4b60fbf2 Merge branch 'itimer_stub' into 'master'
Make redox itimer relibc stub rather than kernel stub.

See merge request redox-os/relibc!647
2025-04-13 20:14:41 +00:00
4lDO2 d68f5d8d3d Make redox itimer relibc stub rather than kernel stub. 2025-04-13 18:18:05 +02:00
Jeremy Soller a0a5b5b7fd Merge branch 'better_exec' into 'master'
Couple of improvements to the exec implementation

See merge request redox-os/relibc!645
2025-04-12 20:24:20 +00:00
bjorn3 ea4c41686c Rustfmt 2025-04-12 22:15:05 +02: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
Jeremy Soller f79a2fb657 Merge branch 'revert_ub_workaround' into 'master'
Revert "Add a workaround for UB on arm64"

See merge request redox-os/relibc!644
2025-04-12 16:26:09 +00: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
Jeremy Soller 5ea71a02c7 Merge branch 'fix_aarch64' into 'master'
Add a workaround for UB on arm64

See merge request redox-os/relibc!643
2025-04-12 12:05:41 +00: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
Jeremy Soller ed575e9259 Implement sigsetjmp on all archs 2025-04-11 20:18:27 -06:00
Jeremy Soller 72d2b1137c Implement quick_exit and at_quick_exit 2025-04-11 18:09:44 -06:00
Jeremy Soller d9a28156ce Disable at_quick_exit 2025-04-11 16:25:12 -06:00
Jeremy Soller b3fbea62da Define __uint32_t and __uint64_t for openlibm 2025-04-11 15:47:57 -06:00
Jeremy Soller 27f3924126 Fix msg_controllen and cmsg_len types 2025-04-10 14:52:26 -06:00
Jeremy Soller 5b5be9aae8 Add IPV6_JOIN/LEAVE_GROUP 2025-04-10 14:43:35 -06:00
Jeremy Soller 9a93fde7b5 Fix gettid on Redox 2025-04-10 13:18:33 -06:00
Jeremy Soller b0be913956 Implement preadv and pwritev 2025-04-10 08:56:06 -06:00
4lDO2 6d0f8d9bd7 Update syscall. 2025-04-06 15:48:36 +02:00
Jeremy Soller 1cbe2038ec Merge branch 'escalated_consume' into 'master'
Use call rather than close in final escalated step.

See merge request redox-os/relibc!641
2025-04-06 13:30:23 +00:00
Jeremy Soller b05f7479ba environ_iter: handle environ being null 2025-04-05 20:56:38 -06:00
4lDO2 93cc8d81a4 Use call rather than close in final escalated step. 2025-04-05 20:06:26 +02:00
Jacob Lorentzon 1ed930ec41 Merge branch 'openat' into 'master'
Add redox_openat_v1

See merge request redox-os/relibc!642
2025-04-05 18:01:51 +00:00
Darley Barreto d2cc45f59c Add redox_openat_v1 2025-04-05 14:50:02 -03:00
Jeremy Soller baaaf8f130 Merge branch 'strptime-subfmt-no-clobber' into 'master'
fix(strptime): Don't clobber struct tm

See merge request redox-os/relibc!640
2025-04-02 18:58:10 +00:00
Josh Megnauth 090391d94f fix(strptime): Don't clobber struct tm
Our strptime implementation uses subformatting to handle specifiers that
expand to other specifiers. For example, '%T' expands to "%H:%M%:%S".
Relibc calls strptime again to handle '%T' by expanding it.

However, our strptime zeroes out struct tm which clobbers old values. If
strptime is called with a format string like "%D%t%T", the set values
for '%D' are clobbered.

Zeroing out the struct is extra, unneeded work as well. The user may
want to preserve old values. We don't read from struct tm so we don't
have to worry about invalid values. Finally, `musl` and `glibc` don't
clear the values either so we can default to their behavior.
2025-04-01 23:35:29 -04:00
Jeremy Soller 7f2a2ffe13 Merge branch 'fix_initialize_freestanding_bug' into 'master'
Prevent initialize_freestanding from accidentally closing fd 0

See merge request redox-os/relibc!638
2025-03-30 19:41:27 +00: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