4lDO2
284f51b47e
Fix struct sigaction defintion.
2024-07-09 15:39:57 +02:00
4lDO2
b64b0ebe18
Handle kill and killpg EINTR.
2024-07-09 15:00:58 +02:00
4lDO2
78247c8525
Pass signal correctly to SYS_KILL.
2024-07-09 15:00:58 +02:00
4lDO2
8298417dee
Implement sigpending on Redox.
2024-07-09 15:00:58 +02:00
4lDO2
c639fd37ba
Implement sigaltstack.
2024-07-09 15:00:57 +02:00
4lDO2
5460ffc4c9
Jump to trampoline after SYS_{READ,WRITE} EINTR.
2024-07-09 15:00:57 +02:00
4lDO2
63509e75ce
Use new signal ABI where 'actions' are in shmem.
2024-07-09 15:00:56 +02:00
4lDO2
2d66993b3f
Adapt to now-inverted signal mask (allowset).
2024-07-09 15:00:55 +02:00
4lDO2
18b5c73b61
Compile on the other arches.
2024-07-09 15:00:55 +02:00
4lDO2
f37bb3cb16
Fix sigaction test on Linux, and rustfmt.
2024-07-09 15:00:55 +02:00
4lDO2
0ea2b5d45f
Fix compilation on Linux.
2024-07-09 15:00:55 +02:00
4lDO2
a1e1a159ae
Initialize altstack properly.
2024-07-09 15:00:54 +02:00
4lDO2
a265c8b7a0
Reimplement libredox sig{procmask,action}.
2024-07-09 15:00:54 +02:00
4lDO2
b6eb7dcf0f
Impl From<Errno> for syscall::Error.
2024-07-09 15:00:54 +02:00
4lDO2
c217745524
Mark sig{add,del}set unsafe, rather than unsound.
2024-07-09 15:00:54 +02:00
4lDO2
42c24dd755
Successfully run more userspace.
2024-07-09 15:00:53 +02:00
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