Commit Graph

112 Commits

Author SHA1 Message Date
4lDO2 fd80526dc6 Implement SIGCONT+SIGHUP on exit when new pgrp becomes orphaned. 2025-04-21 13:58:39 +02:00
4lDO2 7f08436bb0 Return EBADFD/ECHILD in waitpid, not ESRCH. 2025-04-21 13:46:03 +02:00
4lDO2 74eb75f0e7 Fix EACCES check. 2025-04-20 16:50:45 +02:00
4lDO2 bb570062e5 Allow making setpgid return EACCESS, e.g. after execv. 2025-04-20 16:35:25 +02:00
4lDO2 6e89e4528b Enforce stricter setpgid checks. 2025-04-20 16:15:18 +02:00
4lDO2 10a41dbcf3 Synchronize kernel proc attrs properly. 2025-04-19 13:17:48 +02:00
4lDO2 c6de9f768c Make thread fds Weak; reparent to init, not ppid. 2025-04-19 12:52:18 +02:00
4lDO2 1b092a11d5 Add /scheme/proc/ps handler for reading info. 2025-04-19 12:52:18 +02:00
4lDO2 7fc0f04f03 Store process name. 2025-04-19 12:52:18 +02:00
4lDO2 ba823cf5f1 Add ProcCall::Getppid and implement reparenting. 2025-04-19 12:52:17 +02:00
4lDO2 5cbcb06727 Fix ECHILD check and reap, fixing bash. 2025-04-19 12:52:17 +02:00
4lDO2 771993b260 Potential fix for KillThread for sig>32. 2025-04-19 12:52:17 +02:00
4lDO2 3e58f6ad16 Mod sig_idx by 32. 2025-04-19 12:52:17 +02:00
4lDO2 486c8496b5 Add missing kill uid checks. 2025-04-19 12:52:17 +02:00
4lDO2 26371995cb Fix kill(getpid(), ...). 2025-04-19 12:52:17 +02:00
4lDO2 c881b14698 Allow indicating 'exited from signal'. 2025-04-19 12:52:17 +02:00
4lDO2 898c5268ef Fix misc TODOs. 2025-04-19 12:52:17 +02:00
4lDO2 4b27f83bf9 Handle both 'any' and 'any pgid-matching' child in waitpid. 2025-04-19 12:52:17 +02:00
4lDO2 713ba3b23d Import sig numbers from redox_rt rather than syscall. 2025-04-19 12:52:16 +02:00
4lDO2 0036fffd82 WIP: Recognize SIGKILL and unhandled exceptions. 2025-04-19 12:52:16 +02:00
4lDO2 8784fb5010 Handle stop signals correctly for orphaned pgrps, fixing bash. 2025-04-19 12:52:16 +02:00
4lDO2 7bebb711d3 Properly return EINVAL if sig>64. 2025-04-19 12:52:16 +02:00
4lDO2 dd53cebf91 Implement Sigdeq, fixing sigqueue test. 2025-04-19 12:52:16 +02:00
4lDO2 b4d42897d8 Return ERESTART when caller kills itself. 2025-04-19 12:52:16 +02:00
4lDO2 f6898a0e45 Pass exit status to waitpid correctly. 2025-04-19 12:52:16 +02:00
4lDO2 3f54d0c80c Remove unnecessary debug. 2025-04-19 12:50:46 +02:00
4lDO2 368fe1c186 Do not internally spawn exit() dying thread was last. 2025-04-19 12:50:46 +02:00
4lDO2 7edba6b84b Fix fd mismatch for thread event handling. 2025-04-19 12:50:46 +02:00
4lDO2 b7cb70859f Implement ThreadCall::SignalThread. 2025-04-19 12:50:46 +02:00
4lDO2 9c590bf369 Fix waitpid hang for exception-caused termination. 2025-04-19 12:50:46 +02:00
4lDO2 9441775331 Embed Id in VirtualId. 2025-04-19 12:50:46 +02:00
4lDO2 d59597b3dd Add TODO for proc termination without explicit exit. 2025-04-19 12:50:46 +02:00
4lDO2 ab3f59b22b Reacquire thread fd as procmgr-managed before exec init. 2025-04-19 12:50:45 +02:00
4lDO2 53705b7049 Some fixes. 2025-04-19 12:50:45 +02:00
4lDO2 362daf5ca9 Add SIGCHLD logic. 2025-04-19 12:50:45 +02:00
4lDO2 7845d74df1 Impl SIGCONT and SIGSTOP. 2025-04-19 12:50:45 +02:00
4lDO2 a47396e2b9 Fix SyncTctl and SyncPctl. 2025-04-19 12:50:45 +02:00
4lDO2 7902fc7c4d Add thread handle type, thus wrapping open_via_dup. 2025-04-19 12:50:45 +02:00
4lDO2 ae05abf69d Fix two instances of double RefCell borrow. 2025-04-19 12:50:45 +02:00
4lDO2 bdf9563688 Make setresugid atomic. 2025-04-19 12:50:45 +02:00
4lDO2 8434aa9fd8 Add ThisGroup selector for kill. 2025-04-19 12:50:45 +02:00
4lDO2 4d18d17dd2 Remove redundant match arm. 2025-04-19 12:50:44 +02:00
4lDO2 b4f717bac6 Implement setresugid. 2025-04-19 12:50:44 +02:00
4lDO2 0c5b47e677 Phase out static mut for global allocator. 2025-04-19 12:50:44 +02:00
4lDO2 a2861753de Implement setsid. 2025-04-19 12:50:44 +02:00
4lDO2 ae63c54988 Implement getsid. 2025-04-19 12:50:44 +02:00
4lDO2 a0fc7febfc Make send_signal code compile. 2025-04-19 12:50:44 +02:00
4lDO2 fbbb27b0e5 Tmp disable kill and wrap Process in Rc. 2025-04-19 12:50:44 +02:00
4lDO2 a7df1a1734 progress. 2025-04-19 12:50:44 +02:00
4lDO2 19cb1c0512 WIP: start implementing kill. 2025-04-19 12:50:44 +02:00