summaryrefslogtreecommitdiff
path: root/6
diff options
context:
space:
mode:
authorOri Bernstein <ori@eigenstate.org>2018-04-22 19:29:39 -0700
committerOri Bernstein <ori@eigenstate.org>2018-04-22 19:29:39 -0700
commit4ac578a191635f9728dc66dd99b22cc54692b4ef (patch)
tree3dc934a23ce92cd52f53a566c49569778eddc73b /6
parent3d71446ecb6569add0d9eaf2e7e4a05d99bd2625 (diff)
downloadmc-4ac578a191635f9728dc66dd99b22cc54692b4ef.tar.gz
Add a special exit stack to our thread library.
Because OpenBSD wants a valid stack pointer in any code that enters the kernel, unmapping our stack as part of exiting the process is rather unreliable. This change allocates a stack page that we can switch to when a thread is deallocating itself, which keeps the kernel happy.
Diffstat (limited to '6')
-rw-r--r--6/insns.def2
1 files changed, 1 insertions, 1 deletions
diff --git a/6/insns.def b/6/insns.def
index cc80adf..f7125fc 100644
--- a/6/insns.def
+++ b/6/insns.def
@@ -287,7 +287,7 @@ Insn(Ixorp,
/* branch instructions */
Insn(Icall,
- "\tcall %v\n",
+ "\tcall %v@PLT\n",
"\tCALL %V\n",
Use(.l={1}, .r={
Rrdi, Rrsi, Rrdx, Rrcx, Rr8, Rr9,