kumquat-buildroot/package/uclibc/0.9.33.2/uclibc-0026-make-NPTL-s-getpid-behave-similar-to-the-common-one.patch
Peter Korsgaard 055f1c02d3 uclibc: add upstream 0.9.33 fixes
Upstream has a large number of patches lined up for the next 0.9.33.x bugfix
release;

http://git.uclibc.org/uClibc/log/?h=0.9.33

Add them here, as atleast some of them are quite critical (E.G. the eventfd
issue gets triggered by recent glib versions).

I've skipped the microblaze and xtensa fixes as we don't currently support
those with 0.9.33.2.

Drop uclibc-0002-Add-definition-of-MSG_WAITFORONE-and-MSG_CMSG_CMSG_CLOEXE.patch
as that is a subset of uclibc-0035-socket.h-pull-socket_type.h-from-eglibc.patch

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-09-06 15:28:51 +02:00

54 lines
1.4 KiB
Diff

From 8a2b550a510cf2a1a0989fc0a665a6a42c83efd4 Mon Sep 17 00:00:00 2001
From: "Peter S. Mazinger" <ps.m@gmx.net>
Date: Fri, 22 Apr 2011 00:52:22 +0200
Subject: [PATCH] make NPTL's getpid behave similar to the common one
make __getpid static
provide getppid alias if needed
remove unneeded libc_hidden_proto
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
---
libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c
index d4de3cd..d2b3384 100644
--- a/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c
+++ b/libpthread/nptl/sysdeps/unix/sysv/linux/getpid.c
@@ -21,6 +21,10 @@
#include <tls.h>
#include <sysdep.h>
+#ifdef __NR_getxpid
+# undef __NR_getpid
+# define __NR_getpid __NR_getxpid
+#endif
#ifndef NOT_IN_libc
static inline __attribute__((always_inline)) pid_t really_getpid (pid_t oldval);
@@ -46,8 +50,7 @@ really_getpid (pid_t oldval)
}
#endif
-extern __typeof(getpid) __getpid;
-pid_t
+static pid_t
__getpid (void)
{
#ifdef NOT_IN_libc
@@ -60,6 +63,8 @@ __getpid (void)
#endif
return result;
}
-libc_hidden_proto(getpid)
weak_alias(__getpid, getpid)
libc_hidden_weak(getpid)
+#if !defined NOT_IN_libc && !defined __NR_getppid
+strong_alias(getpid,getppid)
+#endif
--
1.7.10.4