feat: add Rust userspace support; fix TLS layout for p_align < 16; kill whole process on sibling-thread faults

This commit is contained in:
daniel committed 2026-10-14 07:16:42 +02:00
1 parent a81298fb24
commit f8b8f9610f
31 files changed
+1076 -38

No files matched your search

+1 -1
View File
@@ -12,4 +12,4 @@
#pragma once
#define MONTAUK_BUILD_NUMBER 302
#define MONTAUK_BUILD_NUMBER 306
+4
View File
@@ -221,6 +221,10 @@ namespace montauk::abi {
}
static int Sys_Kill(int pid) {
// A process may always kill itself: a sibling thread has no other
// way to take the whole process down (SYS_EXIT from a sibling ends
// only that thread), which abort()/panic=abort need.
if (pid == Sched::GetCurrentPid()) return Sched::KillProcess(pid);
if (!Sched::HasCapability(CAP_PROCESS_ADMIN)) {
int ancestor = pid;
bool descendant = false;