4lDO2
a166a1ebb2
For now, put ptr to pctl in TCB.
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
71800d2b73
Fix spurious ign signal.
2024-07-09 15:00:56 +02:00
4lDO2
f28fe4a387
Use fetch_add instead of CAS when setting sigmask.
...
This makes sigprocmask, the way it is currently implemented, wait-free
(technically I think x86 only guarantees LOCK XADD is lock-free and
fair, but still).
2024-07-09 15:00:56 +02:00
4lDO2
39f45b0f67
Fix i686 trampoline.
2024-07-09 15:00:56 +02:00
4lDO2
5b8d53ddd3
Fix x86_64 trampoline.
2024-07-09 15:00:56 +02:00
4lDO2
cda5f18946
Change interrupt stack format, emulate atomicity.
2024-07-09 15:00:56 +02:00
4lDO2
9bb34901bf
Adjust trampolines, only ip and 'archdep' regs are saved.
2024-07-09 15:00:56 +02:00
4lDO2
568fc09277
Reset sighandler in fexec before switching addrsp.
2024-07-09 15:00:56 +02:00
4lDO2
442954915b
Fix x86_64 spurious signal jump condition.
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
157d9fb2ba
Set sigmask to sa_mask inside handler.
2024-07-09 15:00:55 +02:00
4lDO2
630bf2ae3d
Fix popf operand size.
2024-07-09 15:00:55 +02:00
4lDO2
590ad70a9f
Fix trampoline for i686. Ctrl-C now works.
2024-07-09 15:00:55 +02:00
4lDO2
c93b43b4b7
Build on i686, remove unnecessary #[no_mangle].
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
3db425fef6
Correctly find signal number and check action.
2024-07-09 15:00:54 +02:00
4lDO2
98a2a566d9
Almost succeed at repeatedly accepting signals.
2024-07-09 15:00:54 +02:00
4lDO2
d6588668e2
Fix pre-Rust part of trampoline!.
2024-07-09 15:00:54 +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
8f66730d37
Set child sighandler *after* cloning address space.
2024-07-09 15:00:54 +02:00
4lDO2
20284eb2b2
Fix rlct_clone.
2024-07-09 15:00:54 +02:00
4lDO2
42c24dd755
Successfully run more userspace.
2024-07-09 15:00:53 +02:00
4lDO2
7fcf5a1aca
Ignore special bits when selecting signal.
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
d45adade1d
Remove obsolete proc usage, now reaches init.
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
a60710c597
Add missing signal arch offsets.
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
736a445af6
Use new proc control struct too.
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
98ac085c5d
Add sigprocmask stub to rt.
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
0440df142a
Patch redox-syscall to fork.
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
Jeremy Soller
e6f94291be
Merge branch 'derick/fixes' into 'master'
...
Four distinct fixes for significant incorrectness bugs, as three small commits
See merge request redox-os/relibc!481
2024-07-09 12:57:23 +00: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
Jeremy Soller
90af01986c
Merge branch 'improve-instructions' into 'master'
...
Improve the testing instructions on the README
See merge request redox-os/relibc!477
2024-06-24 16:58:53 +00:00
Ribbon
482d094614
Improve the testing instructions on the README
2024-06-24 16:35:57 +00:00