Commit Graph

1435 Commits

Author SHA1 Message Date
4lDO2 a2ab86d253 Implement signal selection in asm, for SA_ONSTACK. 2024-07-09 15:00:53 +02:00
4lDO2 4e93f68324 Implement hack to ensure TCB exists in bootstrap. 2024-07-09 15:00:53 +02:00
4lDO2 58d1153536 Split part of TCB into generic-rt 2024-07-09 15:00:53 +02:00
4lDO2 edfe46c60b Write x86-64 signal trampoline asm stub. 2024-07-09 15:00:52 +02:00
4lDO2 5177ca3926 Remove memoffset dependency. 2024-07-09 15:00:52 +02:00
4lDO2 7d562920c2 Add sigaction boilerplate. 2024-07-09 15:00:52 +02:00
4lDO2 e1d3bf475a Increase SIGRTMIN to 35. 2024-07-09 15:00:52 +02:00
4lDO2 53ed7aae59 Move rlct_clone, sigprocmask, sigaction, to rt. 2024-07-09 15:00:52 +02:00
4lDO2 4eb20628f3 Move some of signal config to redox-rt. 2024-07-09 15:00:52 +02:00
4lDO2 a800693266 Refactor: move redox-exec into redox-rt::proc. 2024-07-09 15:00:52 +02:00
Derick Eddington 572f211be0 Fix getgrgid_r. 2024-07-06 22:47:55 -07:00
Derick Eddington 7c81de68b8 Fix header::grp::parse_grp. 2024-07-06 22:47:55 -07:00
Derick Eddington 802748b611 Fix Rwlock::acquire_write_lock to avoid blocking indefinitely.
Without this fix, `tests/bins_static/pthread/rwlock_randtest` would sometimes get stuck blocking
forever with only 1+ threads all doing `pthread_rwlock_wrlock()` but all the other threads
having finished.
2024-07-06 22:47:55 -07:00
4lDO2 4c11b607de Implement pread and pwrite using the syscalls. 2024-06-14 14:10:47 +02:00
4lDO2 6e86e64fdf Move pthread into TCB. 2024-06-08 11:36:22 +02:00
4lDO2 326c8a6231 Split shared ld_so code and actual ld_so stubs. 2024-06-08 11:36:06 +02:00
Jeremy Soller 73952b69ed Update to new nightly 2024-05-11 14:00:59 -06:00
Jeremy Soller b7a4527ab8 Do not print on unsupported epoll flags 2024-05-06 15:24:56 -06:00
Jeremy Soller 8ab61e3d9a Convert syscall events to EPOLL events 2024-05-06 15:16:31 -06:00
Jeremy Soller 0f5e6a5649 Correct EPOLL constants 2024-05-06 15:00:50 -06:00
Jeremy Soller 59e7d2d70f Return 0 when epoll_ctl is successful 2024-05-06 14:29:21 -06:00
Jeremy Soller 371cde006b Format 2024-05-06 14:28:42 -06:00
Jacob Lorentzon 1fba2ef10a Various futex fixes 2024-04-05 20:31:06 +00:00
4lDO2 c53c38bcae Fix double slashes in fpath. 2024-04-02 15:10:03 +02:00
4lDO2 e0a3811736 Protect fork() and clone() behind a rwlock.
rlct_clone will acquire a read lock, whereas fork will acquire a write
lock. The write lock is necessary because the fork will clone the file
table, which would result in other threads' fork/clone file descriptors
not being closed. If an address space switch fd never gets closed, fork
child processes and new threads, may never switch address spaces before
they are started, which has resulted in hard-to-debug RIP=0 instr fetch
page faults.
2024-03-27 10:30:49 +01:00
Jacob Lorentzon f7ac690c45 Fix pthread rwlock code 2024-03-26 15:46:32 +00:00
4lDO2 6e1a0668aa Fix i686 signal trampoline asm. 2024-03-25 11:26:59 +01:00
4lDO2 b4799fdc28 Don't map thread stacks as MAP_SHARED, lol.
MAP_SHARED means it will continue to be shared after forks, which
obviously isn't the correct behavior. `acid thread` doesn't segfault
infinitely, anymore.
2024-03-25 11:25:37 +01:00
4lDO2 df91c67cf0 Implement redox_mkfs_v1. 2024-03-18 17:18:42 +01:00
4lDO2 53f7b640bd Update redox_syscall. 2024-03-17 18:13:05 +01:00
4lDO2 f2c53e03ee Implement the event queue ABI. 2024-03-17 18:02:07 +01:00
Jacob Lorentzon e0b640d530 Implement new low-level signal trampoline 2024-03-17 16:58:42 +00:00
Jeremy Soller e7ebd7c381 Merge branch 'fix_arm64_thread_spawn' into 'master'
Fix thread spawning on aarch64

See merge request redox-os/relibc!463
2024-03-17 16:32:16 +00:00
bjorn3 7ac379a7a1 Fix thread spawning on aarch64
* Correctly align the stack
* Fix argument order of the ldp instructions
* Remove unnecessary ldr x5 instruction
2024-03-17 17:09:41 +01:00
bpisch a9db7af754 Add stub for SIOCATMARK command of ioctl. 2024-03-09 08:56:37 +01:00
Bendeguz Pisch 2284bc4af5 Fix posix prio process (same as MR458 with fixed commits) 2024-03-04 13:41:43 +00:00
Jeremy Soller 4d2d062f07 Fix build 2024-03-01 08:01:15 -07:00
Jeremy Soller d3aac3585c Merge branch 'errno-naming' into 'master'
Use standard casing and mangling for internal errno

See merge request redox-os/relibc!457
2024-03-01 00:25:42 +00:00
Peter Limkilde Svendsen a7137512fa Use standard casing and mangling for internal errno 2024-03-01 00:25:42 +00:00
Jeremy Soller 4f8d16a3b9 Merge branch 'crypt' into 'master'
Add Crypt functions

See merge request redox-os/relibc!453
2024-03-01 00:23:42 +00:00
Darley Barreto 55dc2019f2 Add Crypt functions 2024-03-01 00:23:42 +00:00
Peter Limkilde Svendsen 9093f6bc47 Use Cell representation for errno 2024-02-29 14:07:40 +00:00
Jeremy Soller 9ef3374c30 Merge branch 'getpagesize-panic' into 'master'
Panic when getpagesize() cannot succeed as specified

See merge request redox-os/relibc!455
2024-02-19 00:19:03 +00:00
Peter Limkilde Svendsen aea9e2b432 Panic when getpagesize() cannot succeed as specified 2024-02-19 00:19:03 +00:00
Jeremy Soller 534e7ef80c Make redox fpath only return new format 2024-02-12 15:09:13 -07:00
Jeremy Soller 8313fc1c77 Fix array pointer mismatch in parse_grp 2024-02-10 14:27:50 -07:00
Jeremy Soller a7b2294b62 Add more networking constants 2024-02-03 13:17:40 -07:00
Jeremy Soller 5b78afe5be Do not set constants UNLOCKED and LOCKED 2024-02-02 15:40:41 -07:00
Jeremy Soller f708800898 Add struct user for linger 2024-02-02 15:35:08 -07:00
Jeremy Soller 47ac9e2d0b Add more TCP socket options 2024-02-02 15:31:08 -07:00