summaryrefslogtreecommitdiff
path: root/microkernel/mach/gnumach
diff options
context:
space:
mode:
Diffstat (limited to 'microkernel/mach/gnumach')
-rw-r--r--microkernel/mach/gnumach/interface.mdwn10
-rw-r--r--microkernel/mach/gnumach/interface/task_set_name.mdwn22
2 files changed, 32 insertions, 0 deletions
diff --git a/microkernel/mach/gnumach/interface.mdwn b/microkernel/mach/gnumach/interface.mdwn
index bfcb9ea6..6f50a83d 100644
--- a/microkernel/mach/gnumach/interface.mdwn
+++ b/microkernel/mach/gnumach/interface.mdwn
@@ -18,7 +18,17 @@ show=title]]
# Proposed
+<a name="futex">
## Futex
+</a>
+
+Add a futex kernel trap to GNU Mach.
+This can be useful for nicer locking
+primitives, including inter-process primitives. `vm_allocate` can be used as an
+example in the `gnumach` source tree for how to add a kernel trap.
+
+
+### [[!GNU_Savannah_task 6231]]
### Patches on bug-hurd
diff --git a/microkernel/mach/gnumach/interface/task_set_name.mdwn b/microkernel/mach/gnumach/interface/task_set_name.mdwn
new file mode 100644
index 00000000..c32a24ff
--- /dev/null
+++ b/microkernel/mach/gnumach/interface/task_set_name.mdwn
@@ -0,0 +1,22 @@
+[[!meta copyright="Copyright © 2013, 2014 Free Software Foundation, Inc."]]
+
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no Invariant
+Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
+is included in the section entitled [[GNU Free Documentation
+License|/fdl]]."]]"""]]
+
+/!\ Does this actually reflect reality?
+
+[[!tag open_issue_documentation open_issue_gnumach]]
+
+A `task_set_name` RPC has been added to GNU Mach. Before, the Mach debugger
+looked for `arg[0]` on the stack using ugly heuristics (see
+`gnumach/i386/i386/db_interface.c`, `looks_like_command`...). Now we can let
+`exec` simply set the name and record it in `task_t`. After adding the RPC,
+glibc needs to be recompiled against the updated `mach.defs` to get access to
+it from userland, and exec would probably call it from `hurd/exec/exec.c`,
+`do_exec()`. Also see the discussion on
+[[open_issues/translate_fd_or_port_to_file_name]].