This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch master updated. glibc-2.22-564-g894f3e1


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, master has been updated
       via  894f3e131176c481c50484e3004a7a641db01373 (commit)
      from  db4855bf0c6fa25f0e3e62c60deb43ffe527b07c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=894f3e131176c481c50484e3004a7a641db01373

commit 894f3e131176c481c50484e3004a7a641db01373
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Sun Nov 29 16:41:00 2015 +0100

    hurd: install correct number of send rights on fork
    
    	* sysdeps/mach/hurd/fork.c (__fork): Install correct number of send
    	rights for its main user thread in NEWTASK.

diff --git a/ChangeLog b/ChangeLog
index d4dc8a4..62beb76 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-29  Thomas Schwinge  <thomas@codesourcery.com>
+
+	* sysdeps/mach/hurd/fork.c (__fork): Install correct number of send
+	rights for its main user thread in NEWTASK.
+
 2015-11-28  Maciej W. Rozycki  <macro@imgtec.com>
 
 	* sysdeps/mips/fpu_control.h (_FPU_RESERVED): Include ABS2008.
diff --git a/sysdeps/mach/hurd/fork.c b/sysdeps/mach/hurd/fork.c
index 04d81e1..d4baed5 100644
--- a/sysdeps/mach/hurd/fork.c
+++ b/sysdeps/mach/hurd/fork.c
@@ -464,14 +464,10 @@ __fork (void)
 	  (err = __mach_port_insert_right (newtask, ss->thread,
 					   thread, MACH_MSG_TYPE_COPY_SEND)))
 	LOSE;
-      /* We have one extra user reference created at the beginning of this
-	 function, accounted for by mach_port_names (and which will thus be
-	 accounted for in the child below).  This extra right gets consumed
-	 in the child by the store into _hurd_sigthread in the child fork.  */
       if (thread_refs > 1 &&
 	  (err = __mach_port_mod_refs (newtask, ss->thread,
 				       MACH_PORT_RIGHT_SEND,
-				       thread_refs)))
+				       thread_refs - 1)))
 	LOSE;
       if ((_hurd_msgport_thread != MACH_PORT_NULL) /* Let user have none.  */
 	  && ((err = __mach_port_deallocate (newtask, _hurd_msgport_thread)) ||

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                |    5 +++++
 sysdeps/mach/hurd/fork.c |    6 +-----
 2 files changed, 6 insertions(+), 5 deletions(-)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]