* hurd/hurdsig.c (_hurdsig_init): If __hurd_threadvar_stack_mask is
nonzero, use cthread_fork to create the signal thread.
* hurd/msgportdemux.c (_hurd_msgport_receive): Initialize
_hurd_msgport_thread here (to self).
* sysdeps/mach/hurd/fork.c (__fork): When __hurd_sigthread_stack_end
is zero, instead compute child signal thread's starting SP from parent
signal thread's current SP and the threadvar_stack variables.
* hurd/Versions (GLIBC_2.1.3): Add cthread_fork, cthread_detach.
These are now referenced weakly by _hurdsig_init.
* sysdeps/mach/hurd/nfs/nfs.h: New file, empty but for comments.
Its presence lets librpcsvc compile ok. This from Mark Kettenis.
We don't install this file for users.
* sysdeps/mach/hurd/Dist: Add it.
* sysdeps/mach/hurd/Makefile [$(subdir) = sunrpc] (sysdep_headers):
Append nfs/nfs.h here.
* hurd/report-wait.c (describe_port): Return char * and use __stpcpy
to return the location of the null byte written into the string.
(describe_number): Likewise.
(describe_number): Remove assert, not always used with #.
If FLAVOR is null, don't use it.
(describe_number): Take signed argument and print a - if negative.
(_S_msg_report_wait): Report system call number for system calls that
aren't mach_msg. Soup up reporting for mach_msg: If destination port
matches SS->intr_port, bracket port description with [...] to indicate
a Hurd interruptible RPC; if destination port is null, examine the
receive port and report that state; if receive port is also null,
check for timeout and report its value.
* sysdeps/mach/hurd/i386/intr-msg.h (MSG_EXAMINE): Return int that is
zero iff we managed to examine the stack; take new args RCV_NAME,
SEND_NAME, OPTION, and TIMEOUT to fill in with mach_msg args.
* hurd/hurdlookup.c (__hurd_directory_name_split): New function.
(__directory_name_split): New function.
* hurd/hurd.h: Declare them.
* sysdeps/mach/hurd/rmdir.c: Use __directory_name_split instead of
__file_name_split, so we ignore trailing slashes properly.
* sysdeps/mach/hurd/rename.c: Likewise.