diff options
Diffstat (limited to 'patches/uClibc/0.9.30.2')
-rw-r--r-- | patches/uClibc/0.9.30.2/190-avr32-add-varargs-handling-of-prctl-syscall.patch | 74 | ||||
-rw-r--r-- | patches/uClibc/0.9.30.2/200-clean-up-O_CLOEXEC-handling.patch | 297 |
2 files changed, 0 insertions, 371 deletions
diff --git a/patches/uClibc/0.9.30.2/190-avr32-add-varargs-handling-of-prctl-syscall.patch b/patches/uClibc/0.9.30.2/190-avr32-add-varargs-handling-of-prctl-syscall.patch deleted file mode 100644 index cd22883..0000000 --- a/patches/uClibc/0.9.30.2/190-avr32-add-varargs-handling-of-prctl-syscall.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 85bc04d5436ca6c8a30a1ad28862260a04b8b3d5 Mon Sep 17 00:00:00 2001 -From: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> -Date: Wed, 16 Dec 2009 13:16:08 +0100 -Subject: [PATCH 02/15] avr32: add varargs handling of prctl syscall - -prctl is defined to use varargs in the header file, hence it needs varargs -specific handling in the source. This patch properly handles the variodic -argument before the syscall is passed to the kernel for the AVR32 architecture. - -Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> ---- - libc/sysdeps/linux/avr32/Makefile.arch | 2 +- - libc/sysdeps/linux/avr32/prctl.c | 36 ++++++++++++++++++++++++++++++++ - 2 files changed, 37 insertions(+), 1 deletions(-) - create mode 100644 libc/sysdeps/linux/avr32/prctl.c - -diff --git a/libc/sysdeps/linux/avr32/Makefile.arch b/libc/sysdeps/linux/avr32/Makefile.arch -index bc5f625..98b85a7 100644 ---- a/libc/sysdeps/linux/avr32/Makefile.arch -+++ b/libc/sysdeps/linux/avr32/Makefile.arch -@@ -5,7 +5,7 @@ - # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. - # - --CSRC := brk.c clone.c mmap.c sigaction.c -+CSRC := brk.c clone.c mmap.c prctl.c sigaction.c - - SSRC := __longjmp.S setjmp.S bsd-setjmp.S bsd-_setjmp.S \ - sigrestorer.S syscall.S vfork.S -diff --git a/libc/sysdeps/linux/avr32/prctl.c b/libc/sysdeps/linux/avr32/prctl.c -new file mode 100644 -index 0000000..4e146e3 ---- /dev/null -+++ b/libc/sysdeps/linux/avr32/prctl.c -@@ -0,0 +1,36 @@ -+/* -+ * prctl syscall for AVR32 Linux. -+ * -+ * Copyright (C) 2010 Atmel Corporation -+ * -+ * This file is subject to the terms and conditions of the GNU Lesser General -+ * Public License. See the file "COPYING.LIB" in the main directory of this -+ * archive for more details. -+ */ -+#include <sys/syscall.h> -+#include <sys/prctl.h> -+#include <stdarg.h> -+ -+#ifdef __NR_prctl -+#define __NR___syscall_prctl __NR_prctl -+static inline _syscall5(int, __syscall_prctl, int, option, long, arg2, -+ long, arg3, long, arg4, long, arg5); -+ -+int prctl(int __option, ...) -+{ -+ long arg2; -+ long arg3; -+ long arg4; -+ long arg5; -+ va_list ap; -+ -+ va_start(ap, __option); -+ arg2 = va_arg(ap, long); -+ arg3 = va_arg(ap, long); -+ arg4 = va_arg(ap, long); -+ arg5 = va_arg(ap, long); -+ va_end(ap); -+ -+ return INLINE_SYSCALL(prctl, 5, __option, arg2, arg3, arg4, arg5); -+} -+#endif --- -1.6.6.1 - diff --git a/patches/uClibc/0.9.30.2/200-clean-up-O_CLOEXEC-handling.patch b/patches/uClibc/0.9.30.2/200-clean-up-O_CLOEXEC-handling.patch deleted file mode 100644 index 2abfe07..0000000 --- a/patches/uClibc/0.9.30.2/200-clean-up-O_CLOEXEC-handling.patch +++ /dev/null @@ -1,297 +0,0 @@ -From 74ca5695cd9913691192e075449b8be5794d50f0 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Thu, 8 Oct 2009 02:51:55 +0000 -Subject: [PATCH 12/15] clean up O_CLOEXEC handling - -Drop the "#ifndef O_CLOEXEC" cruft, enable O_CLOEXEC in most fcntl.h -headers, and import __ASSUME_O_CLOEXEC from glibc. - -Signed-off-by: Mike Frysinger <vapier@gentoo.org> -Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> ---- - libc/pwd_grp/lckpwdf.c | 8 +++++++- - libc/sysdeps/linux/alpha/bits/fcntl.h | 2 -- - libc/sysdeps/linux/arm/bits/fcntl.h | 2 -- - libc/sysdeps/linux/avr32/bits/fcntl.h | 1 + - libc/sysdeps/linux/bfin/bits/fcntl.h | 2 ++ - libc/sysdeps/linux/cris/bits/fcntl.h | 1 + - libc/sysdeps/linux/frv/bits/fcntl.h | 2 ++ - libc/sysdeps/linux/hppa/bits/fcntl.h | 1 + - libc/sysdeps/linux/i386/bits/fcntl.h | 2 -- - libc/sysdeps/linux/ia64/bits/fcntl.h | 2 -- - libc/sysdeps/linux/m68k/bits/fcntl.h | 1 + - libc/sysdeps/linux/microblaze/bits/fcntl.h | 2 ++ - libc/sysdeps/linux/mips/bits/fcntl.h | 1 + - libc/sysdeps/linux/powerpc/bits/fcntl.h | 2 -- - libc/sysdeps/linux/sh/bits/fcntl.h | 2 -- - libc/sysdeps/linux/sh64/bits/fcntl.h | 2 ++ - libc/sysdeps/linux/sparc/bits/fcntl.h | 2 -- - libc/sysdeps/linux/x86_64/bits/fcntl.h | 2 -- - libc/sysdeps/linux/xtensa/bits/fcntl.h | 1 + - 19 files changed, 21 insertions(+), 17 deletions(-) - -diff --git a/libc/pwd_grp/lckpwdf.c b/libc/pwd_grp/lckpwdf.c -index 0b0fb47..aec6283 100644 ---- a/libc/pwd_grp/lckpwdf.c -+++ b/libc/pwd_grp/lckpwdf.c -@@ -75,7 +75,7 @@ lckpwdf (void) - /* Prevent problems caused by multiple threads. */ - __UCLIBC_MUTEX_LOCK(mylock); - -- lock_fd = open (_PATH_PASSWD, O_WRONLY); -+ lock_fd = open (_PATH_PASSWD, O_WRONLY | O_CLOEXEC); - if (lock_fd == -1) { - /* Cannot create lock file. */ - goto DONE; -@@ -97,6 +97,12 @@ lckpwdf (void) - goto DONE; - } - -+#ifndef __ASSUME_O_CLOEXEC -+ /* Make sure file gets correctly closed when process finished. */ -+ fcntl (lock_fd, F_SETFD, FD_CLOEXEC); -+#endif -+ -+ - /* Now we have to get exclusive write access. Since multiple - process could try this we won't stop when it first fails. - Instead we set a timeout for the system call. Once the timer -diff --git a/libc/sysdeps/linux/alpha/bits/fcntl.h b/libc/sysdeps/linux/alpha/bits/fcntl.h -index 2a6b9ea..649c563 100644 ---- a/libc/sysdeps/linux/alpha/bits/fcntl.h -+++ b/libc/sysdeps/linux/alpha/bits/fcntl.h -@@ -50,9 +50,7 @@ - # define O_NOFOLLOW 0200000 /* Do not follow links. */ - # define O_DIRECT 02000000 /* Direct disk access. */ - # define O_NOATIME 04000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 010000000 /* Set close_on_exec. */ --# endif - #endif - - #ifdef __USE_LARGEFILE64 -diff --git a/libc/sysdeps/linux/arm/bits/fcntl.h b/libc/sysdeps/linux/arm/bits/fcntl.h -index 86cea4b..7cc5a9d 100644 ---- a/libc/sysdeps/linux/arm/bits/fcntl.h -+++ b/libc/sysdeps/linux/arm/bits/fcntl.h -@@ -50,9 +50,7 @@ - # define O_NOFOLLOW 0100000 /* Do not follow links. */ - # define O_DIRECT 0200000 /* Direct disk access. */ - # define O_NOATIME 01000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 02000000 /* Set close_on_exec. */ --# endif - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/avr32/bits/fcntl.h b/libc/sysdeps/linux/avr32/bits/fcntl.h -index 2301e22..767243e 100644 ---- a/libc/sysdeps/linux/avr32/bits/fcntl.h -+++ b/libc/sysdeps/linux/avr32/bits/fcntl.h -@@ -30,6 +30,7 @@ - # define O_DIRECTORY 00200000 /* direct disk access */ - # define O_NOFOLLOW 00400000 /* don't follow links */ - # define O_NOATIME 01000000 /* don't set atime */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - #ifdef __USE_LARGEFILE64 -diff --git a/libc/sysdeps/linux/bfin/bits/fcntl.h b/libc/sysdeps/linux/bfin/bits/fcntl.h -index 7d0bcf9..aabf94d 100644 ---- a/libc/sysdeps/linux/bfin/bits/fcntl.h -+++ b/libc/sysdeps/linux/bfin/bits/fcntl.h -@@ -48,6 +48,8 @@ - # define O_DIRECTORY 040000 /* Must be a directory. */ - # define O_NOFOLLOW 0100000 /* Do not follow links. */ - # define O_DIRECT 0200000 /* Direct disk access. */ -+# define O_NOATIME 01000000 /* don't set atime */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/cris/bits/fcntl.h b/libc/sysdeps/linux/cris/bits/fcntl.h -index a2106ef..29443ba 100644 ---- a/libc/sysdeps/linux/cris/bits/fcntl.h -+++ b/libc/sysdeps/linux/cris/bits/fcntl.h -@@ -50,6 +50,7 @@ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ - # define O_NOATIME 01000000 /* Do not set atime. */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/frv/bits/fcntl.h b/libc/sysdeps/linux/frv/bits/fcntl.h -index 06e8860..5bff4d3 100644 ---- a/libc/sysdeps/linux/frv/bits/fcntl.h -+++ b/libc/sysdeps/linux/frv/bits/fcntl.h -@@ -45,6 +45,8 @@ - # define O_DIRECT 040000 /* Direct disk access. */ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ -+# define O_NOATIME 01000000 /* don't set atime */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/hppa/bits/fcntl.h b/libc/sysdeps/linux/hppa/bits/fcntl.h -index cc23bf8..86e3b6f 100644 ---- a/libc/sysdeps/linux/hppa/bits/fcntl.h -+++ b/libc/sysdeps/linux/hppa/bits/fcntl.h -@@ -50,6 +50,7 @@ - # define O_DIRECTORY 00010000 /* Must be a directory. */ - # define O_NOFOLLOW 00000200 /* Do not follow links. */ - # define O_NOATIME 04000000 /* Do not set atime. */ -+# define O_CLOEXEC 010000000 /* set close_on_exec */ - #endif - - #ifdef __USE_LARGEFILE64 -diff --git a/libc/sysdeps/linux/i386/bits/fcntl.h b/libc/sysdeps/linux/i386/bits/fcntl.h -index 7f0b552..22e073b 100644 ---- a/libc/sysdeps/linux/i386/bits/fcntl.h -+++ b/libc/sysdeps/linux/i386/bits/fcntl.h -@@ -50,9 +50,7 @@ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ - # define O_NOATIME 01000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 02000000 /* Set close_on_exec. */ --# endif - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/ia64/bits/fcntl.h b/libc/sysdeps/linux/ia64/bits/fcntl.h -index d134c4b..85a55f6 100644 ---- a/libc/sysdeps/linux/ia64/bits/fcntl.h -+++ b/libc/sysdeps/linux/ia64/bits/fcntl.h -@@ -49,9 +49,7 @@ - # define O_DIRECTORY 0200000 /* must be a directory */ - # define O_NOFOLLOW 0400000 /* don't follow links */ - # define O_NOATIME 01000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 02000000 /* Set close_on_exec. */ --# endif - #endif - - #ifdef __USE_LARGEFILE64 -diff --git a/libc/sysdeps/linux/m68k/bits/fcntl.h b/libc/sysdeps/linux/m68k/bits/fcntl.h -index d36198d..e564b42 100644 ---- a/libc/sysdeps/linux/m68k/bits/fcntl.h -+++ b/libc/sysdeps/linux/m68k/bits/fcntl.h -@@ -49,6 +49,7 @@ - # define O_NOFOLLOW 0100000 /* Do not follow links. */ - # define O_DIRECT 0200000 /* Direct disk access. */ - # define O_NOATIME 01000000 /* Do not set atime. */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/microblaze/bits/fcntl.h b/libc/sysdeps/linux/microblaze/bits/fcntl.h -index c8aeb91..da35209 100644 ---- a/libc/sysdeps/linux/microblaze/bits/fcntl.h -+++ b/libc/sysdeps/linux/microblaze/bits/fcntl.h -@@ -45,6 +45,8 @@ - # define O_DIRECTORY 040000 /* Must be a directory. */ - # define O_NOFOLLOW 0100000 /* Do not follow links. */ - # define O_DIRECT 0200000 /* Direct disk access. */ -+# define O_NOATIME 01000000 /* Do not set atime. */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/mips/bits/fcntl.h b/libc/sysdeps/linux/mips/bits/fcntl.h -index ef015a4..f0072fd 100644 ---- a/libc/sysdeps/linux/mips/bits/fcntl.h -+++ b/libc/sysdeps/linux/mips/bits/fcntl.h -@@ -51,6 +51,7 @@ - # define O_DIRECT 0x8000 /* Direct disk access hint. */ - # define O_DIRECTORY 0x10000 /* Must be a directory. */ - # define O_NOATIME 0x40000 /* Do not set atime. */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has no synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/powerpc/bits/fcntl.h b/libc/sysdeps/linux/powerpc/bits/fcntl.h -index ceb75b4..0759c6a 100644 ---- a/libc/sysdeps/linux/powerpc/bits/fcntl.h -+++ b/libc/sysdeps/linux/powerpc/bits/fcntl.h -@@ -50,9 +50,7 @@ - # define O_DIRECTORY 040000 /* Must be a directory. */ - # define O_NOFOLLOW 0100000 /* Do not follow links. */ - # define O_NOATIME 01000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 02000000 /* Set close_on_exec. */ --# endif - #endif - - #ifdef __USE_LARGEFILE64 -diff --git a/libc/sysdeps/linux/sh/bits/fcntl.h b/libc/sysdeps/linux/sh/bits/fcntl.h -index 570484c..adb7377 100644 ---- a/libc/sysdeps/linux/sh/bits/fcntl.h -+++ b/libc/sysdeps/linux/sh/bits/fcntl.h -@@ -50,9 +50,7 @@ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ - # define O_NOATIME 01000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 02000000 /* Set close_on_exec. */ --# endif - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/sh64/bits/fcntl.h b/libc/sysdeps/linux/sh64/bits/fcntl.h -index 06e8860..245d35a 100644 ---- a/libc/sysdeps/linux/sh64/bits/fcntl.h -+++ b/libc/sysdeps/linux/sh64/bits/fcntl.h -@@ -45,6 +45,8 @@ - # define O_DIRECT 040000 /* Direct disk access. */ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ -+# define O_NOATIME 01000000 /* Do not set atime. */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/sparc/bits/fcntl.h b/libc/sysdeps/linux/sparc/bits/fcntl.h -index 29c09a9..31a6d9b 100644 ---- a/libc/sysdeps/linux/sparc/bits/fcntl.h -+++ b/libc/sysdeps/linux/sparc/bits/fcntl.h -@@ -49,9 +49,7 @@ - # define O_NOFOLLOW 0x20000 /* don't follow links */ - # define O_DIRECT 0x100000 /* direct disk access hint */ - # define O_NOATIME 0x200000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 0x400000 /* Set close_on_exit. */ --# endif - #endif - - #ifdef __USE_LARGEFILE64 -diff --git a/libc/sysdeps/linux/x86_64/bits/fcntl.h b/libc/sysdeps/linux/x86_64/bits/fcntl.h -index be00e4a..f1cf388 100644 ---- a/libc/sysdeps/linux/x86_64/bits/fcntl.h -+++ b/libc/sysdeps/linux/x86_64/bits/fcntl.h -@@ -50,9 +50,7 @@ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ - # define O_NOATIME 01000000 /* Do not set atime. */ --# if 0 - # define O_CLOEXEC 02000000 /* Set close_on_exec. */ --# endif - #endif - - /* For now Linux has synchronisity options for data and read operations. -diff --git a/libc/sysdeps/linux/xtensa/bits/fcntl.h b/libc/sysdeps/linux/xtensa/bits/fcntl.h -index a89362e..921a626 100644 ---- a/libc/sysdeps/linux/xtensa/bits/fcntl.h -+++ b/libc/sysdeps/linux/xtensa/bits/fcntl.h -@@ -50,6 +50,7 @@ - # define O_DIRECTORY 0200000 /* Must be a directory. */ - # define O_NOFOLLOW 0400000 /* Do not follow links. */ - # define O_NOATIME 01000000 /* Do not set atime. */ -+# define O_CLOEXEC 02000000 /* set close_on_exec */ - #endif - - /* For now Linux has synchronisity options for data and read operations. --- -1.6.6.1 - |