[roland/nptl-sh] SH: Convert fork.c to arch-fork.h

Message ID 20140516202418.824292C3A7F@topped-with-meat.com
State Committed
Headers

Commit Message

Roland McGrath May 16, 2014, 8:24 p.m. UTC
  This should have no effect on the compiled code, but it is wholly untested.
Please verify that it indeed does not change the code.  Feel free to commit
it yourself if you want to, or I'll do it on your approval.
What I use to verify no code changes is:

	$ make -j... # build before applying patch
	$ mkdir =stock
	$ cp libc.so =stock/
	... apply the patch ...
	$ make -j... # build after applying patch
	$ diff -u -I '.*file format.*' <(objdump -rd =stock/libc.so) <(objdump -rd libc.so)	


Thanks,
Roland	


	* sysdeps/unix/sysv/linux/sh/arch-fork.h: New file.
	* nptl/sysdeps/unix/sysv/linux/sh/fork.c: File removed.
  

Comments

Kaz Kojima May 16, 2014, 11:25 p.m. UTC | #1
Roland McGrath <roland@hack.frob.com> wrote:
> This should have no effect on the compiled code, but it is wholly untested.
> Please verify that it indeed does not change the code.  Feel free to commit
> it yourself if you want to, or I'll do it on your approval.

The patch is fine.  Please install it.

Regards,
	kaz
  
Roland McGrath May 27, 2014, 7:58 p.m. UTC | #2
Committed.

Thanks,
Roland
  

Patch

--- a/nptl/sysdeps/unix/sysv/linux/sh/fork.c
+++ /dev/null
@@ -1,29 +0,0 @@ 
-/* Copyright (C) 2003-2014 Free Software Foundation, Inc.
-   This file is part of the GNU C Library.
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, see
-   <http://www.gnu.org/licenses/>.  */
-
-#include <sched.h>
-#include <signal.h>
-#include <sysdep.h>
-#include <tls.h>
-
-/* TLS pointer argument is passed as the 5-th argument.  */
-#define ARCH_FORK() \
-  INLINE_SYSCALL (clone, 5,						      \
-		  CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD, 0,     \
-		  NULL, &THREAD_SELF->tid, NULL)
-
-#include "../fork.c"
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sh/arch-fork.h
@@ -0,0 +1,28 @@ 
+/* ARCH_FORK definition for Linux fork implementation.  SH version.
+   Copyright (C) 2003-2014 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
+
+#include <sched.h>
+#include <signal.h>
+#include <sysdep.h>
+#include <tls.h>
+
+/* TLS pointer argument is passed as the 5-th argument.  */
+#define ARCH_FORK() \
+  INLINE_SYSCALL (clone, 5,						      \
+		  CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD, 0,     \
+		  NULL, &THREAD_SELF->tid, NULL)