about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog20
-rw-r--r--hurd/hurd/ioctl.h5
-rw-r--r--mach/mach_init.c2
-rw-r--r--nscd/nscd-client.h1
-rw-r--r--sysdeps/mach/hurd/dl-sysdep.c4
-rw-r--r--sysdeps/mach/hurd/fork.c2
-rw-r--r--sysdeps/mach/hurd/i386/intr-msg.h6
-rw-r--r--sysdeps/mach/hurd/i386/trampoline.c1
-rw-r--r--sysdeps/mach/hurd/malloc-machine.h6
-rw-r--r--sysdeps/mach/hurd/mmap.c9
-rw-r--r--sysdeps/mach/hurd/setitimer.c2
-rw-r--r--sysdeps/mach/hurd/setsid.c1
12 files changed, 42 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index 95b8bfb04f..1c32a95496 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,26 @@
 
 	* sysdeps/mach/hurd/Makefile ($(common-objpfx)errnos.d): Depend on
 	libc-modules.h
+	* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): Remove
+	unused declaration of _hurd_intr_rpc_msg_in_trap.
+	* mach/mach_init.c (__mach_init): Test whether HAVE_HOST_PAGE_SIZE is
+	defined instead of whether it is non-zero.
+	* sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Use "+m"
+	input constraint instead of both input and output constraint.  Use ecx
+	clobber instead of %ecx.
+	* sysdeps/mach/hurd/malloc-machine.h (mutex_init, mutex_lock,
+	mutex_unlock): Use a statement expression instead of an expression list.
+	* sysdeps/mach/hurd/setitimer.c (_hurd_itimer_thread_stack_size): Set
+	type to vm_size_t instead of vm_address_t.
+	* sysdeps/mach/hurd/fork.c (__fork): Test whether STACK_GROWTH_UP is
+	defined instead of whether it is non-zero.
+	* hurd/hurd/ioctl.h (_hurd_locked_install_cttyid): New declaration.
+	* sysdeps/mach/hurd/setsid.c: Include <hurd/ioctl.h>.
+	* sysdeps/mach/hurd/mmap.c (__mmap): Use 0 instead of NULL for
+	comparisons with mapaddr.
+	* nscd/nscd-client.h: Include <time.h>.
+	* sysdeps/mach/hurd/dl-sysdep.c (fmh): Pass vm_offset_t dummy
+	9th parameter to __vm_region instead of int.
 
 2015-03-19  Roland McGrath  <roland@hack.frob.com>
 
diff --git a/hurd/hurd/ioctl.h b/hurd/hurd/ioctl.h
index 1f8b610f58..4771426320 100644
--- a/hurd/hurd/ioctl.h
+++ b/hurd/hurd/ioctl.h
@@ -68,6 +68,11 @@ extern int hurd_register_ioctl_handler (int first_request, int last_request,
   _HURD_HANDLE_IOCTLS_1 (handler, ioctl, ioctl, ioctl##_only)
 
 
+/* Install a new CTTYID port, atomically updating the dtable appropriately.
+   This consumes the send right passed in.  */
+
+void _hurd_locked_install_cttyid (mach_port_t cttyid);
+
 /* Lookup the handler for the given ioctl request.  */
 
 ioctl_handler_t _hurd_lookup_ioctl_handler (int request);
diff --git a/mach/mach_init.c b/mach/mach_init.c
index b8bef518e6..cf8ac3bb31 100644
--- a/mach/mach_init.c
+++ b/mach/mach_init.c
@@ -36,7 +36,7 @@ __mach_init (void)
   __mach_task_self_ = (__mach_task_self) ();
   __mig_init (0);
 
-#if HAVE_HOST_PAGE_SIZE
+#ifdef HAVE_HOST_PAGE_SIZE
   if (err = __host_page_size (__mach_host_self (), &__vm_page_size))
     _exit (err);
 #else
diff --git a/nscd/nscd-client.h b/nscd/nscd-client.h
index ae6dc4b203..43a8c61014 100644
--- a/nscd/nscd-client.h
+++ b/nscd/nscd-client.h
@@ -25,6 +25,7 @@
 #include <stdbool.h>
 #include <stdint.h>
 #include <string.h>
+#include <time.h>
 #include <sys/types.h>
 #include <atomic.h>
 #include <nscd-types.h>
diff --git a/sysdeps/mach/hurd/dl-sysdep.c b/sysdeps/mach/hurd/dl-sysdep.c
index 084624a7ef..8bb9fad090 100644
--- a/sysdeps/mach/hurd/dl-sysdep.c
+++ b/sysdeps/mach/hurd/dl-sysdep.c
@@ -96,9 +96,9 @@ static vm_size_t fmhs;
 static void unfmh(void){
 __vm_deallocate(__mach_task_self(),fmha,fmhs);}
 static void fmh(void) {
-    error_t err;int x;mach_port_t p;
+    error_t err;int x;vm_offset_t o;mach_port_t p;
     vm_address_t a=0x08000000U,max=VM_MAX_ADDRESS;
-    while (!(err=__vm_region(__mach_task_self(),&a,&fmhs,&x,&x,&x,&x,&p,&x))){
+    while (!(err=__vm_region(__mach_task_self(),&a,&fmhs,&x,&x,&x,&x,&p,&o))){
       __mach_port_deallocate(__mach_task_self(),p);
       if (a+fmhs>=0x80000000U){
 	max=a; break;}
diff --git a/sysdeps/mach/hurd/fork.c b/sysdeps/mach/hurd/fork.c
index f3c26150c2..04d81e1d1d 100644
--- a/sysdeps/mach/hurd/fork.c
+++ b/sysdeps/mach/hurd/fork.c
@@ -507,7 +507,7 @@ __fork (void)
 				    MACHINE_THREAD_STATE_FLAVOR,
 				    (natural_t *) &state, &statecount))
 	LOSE;
-#if STACK_GROWTH_UP
+#ifdef STACK_GROWTH_UP
 #define THREADVAR_SPACE (__hurd_threadvar_max \
 			 * sizeof *__hurd_sightread_variables)
       if (__hurd_sigthread_stack_base == 0)
diff --git a/sysdeps/mach/hurd/i386/intr-msg.h b/sysdeps/mach/hurd/i386/intr-msg.h
index a0268c1b39..0be995c53b 100644
--- a/sysdeps/mach/hurd/i386/intr-msg.h
+++ b/sysdeps/mach/hurd/i386/intr-msg.h
@@ -33,9 +33,9 @@
        "_hurd_intr_rpc_msg_do_trap:	lcall $7, $0 # status in %0\n"	      \
        "_hurd_intr_rpc_msg_in_trap:	movl %%ecx, %%esp\n"		      \
        "_hurd_intr_rpc_msg_sp_restored:"				      \
-       : "=a" (err), "=m" (option), "=m" (timeout)			      \
-       : "m" ((&msg)[-1]), "1" (option), "2" (timeout)			      \
-       : "%ecx");							      \
+       : "=a" (err), "+m" (option), "+m" (timeout)			      \
+       : "m" ((&msg)[-1])						      \
+       : "ecx");							      \
   err;									      \
 })
 
diff --git a/sysdeps/mach/hurd/i386/trampoline.c b/sysdeps/mach/hurd/i386/trampoline.c
index 89041cc7f6..2dffd1382c 100644
--- a/sysdeps/mach/hurd/i386/trampoline.c
+++ b/sysdeps/mach/hurd/i386/trampoline.c
@@ -35,7 +35,6 @@ _hurd_setup_sighandler (struct hurd_sigstate *ss, __sighandler_t handler,
   void trampoline (void);
   void rpc_wait_trampoline (void);
   void firewall (void);
-  extern const void _hurd_intr_rpc_msg_in_trap;
   extern const void _hurd_intr_rpc_msg_cx_sp;
   extern const void _hurd_intr_rpc_msg_sp_restored;
   void *volatile sigsp;
diff --git a/sysdeps/mach/hurd/malloc-machine.h b/sysdeps/mach/hurd/malloc-machine.h
index f7fb96e9b9..d69d82be8e 100644
--- a/sysdeps/mach/hurd/malloc-machine.h
+++ b/sysdeps/mach/hurd/malloc-machine.h
@@ -33,13 +33,13 @@
 #define mutex_t struct mutex
 
 #undef mutex_init
-#define mutex_init(m) (__mutex_init(m), 0)
+#define mutex_init(m) ({ __mutex_init(m); 0; })
 
 #undef mutex_lock
-#define mutex_lock(m) (__mutex_lock(m), 0)
+#define mutex_lock(m) ({ __mutex_lock(m); 0; })
 
 #undef mutex_unlock
-#define mutex_unlock(m) (__mutex_unlock(m), 0)
+#define mutex_unlock(m) ({ __mutex_unlock(m); 0; })
 
 #define mutex_trylock(m) (!__mutex_trylock(m))
 
diff --git a/sysdeps/mach/hurd/mmap.c b/sysdeps/mach/hurd/mmap.c
index 393008f2fe..139f27ad30 100644
--- a/sysdeps/mach/hurd/mmap.c
+++ b/sysdeps/mach/hurd/mmap.c
@@ -48,8 +48,7 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, int fd, off_t offset)
       && prot == (PROT_READ|PROT_WRITE)) /* cf VM_PROT_DEFAULT */
     {
       /* vm_allocate has (a little) less overhead in the kernel too.  */
-      err = __vm_allocate (__mach_task_self (), &mapaddr, len,
-			   mapaddr == NULL);
+      err = __vm_allocate (__mach_task_self (), &mapaddr, len, mapaddr == 0);
 
       if (err == KERN_NO_SPACE)
 	{
@@ -61,7 +60,7 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, int fd, off_t offset)
 	      if (!err)
 		err = __vm_allocate (__mach_task_self (), &mapaddr, len, 0);
 	    }
-	  else if (mapaddr != NULL)
+	  else if (mapaddr != 0)
 	    err = __vm_allocate (__mach_task_self (), &mapaddr, len, 1);
 	}
 
@@ -145,7 +144,7 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, int fd, off_t offset)
 
   err = __vm_map (__mach_task_self (),
 		  &mapaddr, (vm_size_t) len, (vm_address_t) 0,
-		  mapaddr == NULL,
+		  mapaddr == 0,
 		  memobj, (vm_offset_t) offset,
 		  ! (flags & MAP_SHARED),
 		  vmprot, VM_PROT_ALL,
@@ -167,7 +166,7 @@ __mmap (__ptr_t addr, size_t len, int prot, int flags, int fd, off_t offset)
 			    (flags & MAP_SHARED) ? VM_INHERIT_SHARE
 			    : VM_INHERIT_COPY);
 	}
-      else if (mapaddr != NULL)
+      else if (mapaddr != 0)
 	err = __vm_map (__mach_task_self (),
 			&mapaddr, (vm_size_t) len, (vm_address_t) 0,
 			1, memobj, (vm_offset_t) offset,
diff --git a/sysdeps/mach/hurd/setitimer.c b/sysdeps/mach/hurd/setitimer.c
index f88c939dba..aeaf3d7c4d 100644
--- a/sysdeps/mach/hurd/setitimer.c
+++ b/sysdeps/mach/hurd/setitimer.c
@@ -33,7 +33,7 @@ mach_port_t _hurd_itimer_port;	/* Port the timer thread blocks on.  */
 thread_t _hurd_itimer_thread;	/* Thread waiting for timeout.  */
 int _hurd_itimer_thread_suspended; /* Nonzero if that thread is suspended.  */
 vm_address_t _hurd_itimer_thread_stack_base; /* Base of its stack.  */
-vm_address_t _hurd_itimer_thread_stack_size; /* Size of its stack.  */
+vm_size_t _hurd_itimer_thread_stack_size; /* Size of its stack.  */
 struct timeval _hurd_itimer_started; /* Time the thread started waiting.  */
 
 static void
diff --git a/sysdeps/mach/hurd/setsid.c b/sysdeps/mach/hurd/setsid.c
index be17ca2604..2b792fcf93 100644
--- a/sysdeps/mach/hurd/setsid.c
+++ b/sysdeps/mach/hurd/setsid.c
@@ -20,6 +20,7 @@
 #include <hurd.h>
 #include <hurd/port.h>
 #include <hurd/fd.h>
+#include <hurd/ioctl.h>
 
 /* Create a new session with the calling process as its leader.
    The process group IDs of the session and the calling process