summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2014-02-20 02:01:29 -0800
committerSaul Wold <sgw@linux.intel.com>2014-02-20 20:06:22 -0800
commitef0adae63b4b9689c25ed7d84f2b09575c81ce83 (patch)
tree7bfbe92500de07db7718c29a5695b3e856a987f1
parentd4438e421f448cdb7e25c038d657bbebc1b6486e (diff)
downloadopenembedded-core-ef0adae63b4b9689c25ed7d84f2b09575c81ce83.tar.gz
openembedded-core-ef0adae63b4b9689c25ed7d84f2b09575c81ce83.tar.bz2
openembedded-core-ef0adae63b4b9689c25ed7d84f2b09575c81ce83.zip
uclibc: Add new functionality needed for systemd 209
implement eventfd_read and eventfd_write and setns Define F_SETPIPE_SZ and F_GETPIPE_SZ Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--meta/recipes-core/uclibc/uclibc-git.inc3
-rw-r--r--meta/recipes-core/uclibc/uclibc-git/0001-Add-eventfd_read-and-eventfd_write.patch120
-rw-r--r--meta/recipes-core/uclibc/uclibc-git/0002-wire-setns-syscall.patch68
-rw-r--r--meta/recipes-core/uclibc/uclibc-git/0003-fcntl.h-Define-F_SETPIPE_SZ-and-F_GETPIPE_SZ.patch377
4 files changed, 568 insertions, 0 deletions
diff --git a/meta/recipes-core/uclibc/uclibc-git.inc b/meta/recipes-core/uclibc/uclibc-git.inc
index f2a125601c..3c8e47cc22 100644
--- a/meta/recipes-core/uclibc/uclibc-git.inc
+++ b/meta/recipes-core/uclibc/uclibc-git.inc
@@ -21,5 +21,8 @@ SRC_URI = "git://uclibc.org/uClibc.git;branch=master \
file://0001-nptl-atfork-Hide-pthread_atfork-in-shared-versions.patch \
file://0001-librt-Use-nodefaultlibs-instead-of-nostdlib.patch \
file://0001-Revert-utent.c-wtent.c-move-functions-from-utxent.c.patch \
+ file://0001-Add-eventfd_read-and-eventfd_write.patch \
+ file://0002-wire-setns-syscall.patch \
+ file://0003-fcntl.h-Define-F_SETPIPE_SZ-and-F_GETPIPE_SZ.patch \
"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-core/uclibc/uclibc-git/0001-Add-eventfd_read-and-eventfd_write.patch b/meta/recipes-core/uclibc/uclibc-git/0001-Add-eventfd_read-and-eventfd_write.patch
new file mode 100644
index 0000000000..dd0efc0f36
--- /dev/null
+++ b/meta/recipes-core/uclibc/uclibc-git/0001-Add-eventfd_read-and-eventfd_write.patch
@@ -0,0 +1,120 @@
+From e3aae24ede969e2dede1aa19c2ee520cab71ce11 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Feb 2014 00:30:18 -0800
+Subject: [PATCH 1/3] Add eventfd_read() and eventfd_write()
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+---
+ libc/sysdeps/linux/common/Makefile.in | 2 ++
+ libc/sysdeps/linux/common/eventfd_read.c | 27 +++++++++++++++++++++++++++
+ libc/sysdeps/linux/common/eventfd_write.c | 28 ++++++++++++++++++++++++++++
+ libc/sysdeps/linux/common/sys/eventfd.h | 4 ----
+ 4 files changed, 57 insertions(+), 4 deletions(-)
+ create mode 100644 libc/sysdeps/linux/common/eventfd_read.c
+ create mode 100644 libc/sysdeps/linux/common/eventfd_write.c
+
+diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in
+index dbf0b0f..45d2e21 100644
+--- a/libc/sysdeps/linux/common/Makefile.in
++++ b/libc/sysdeps/linux/common/Makefile.in
+@@ -25,6 +25,8 @@ CSRC-$(UCLIBC_LINUX_SPECIFIC) += \
+ capset.c \
+ dup3.c \
+ eventfd.c \
++ eventfd_read.c \
++ eventfd_write.c \
+ inotify.c \
+ ioperm.c \
+ iopl.c \
+diff --git a/libc/sysdeps/linux/common/eventfd_read.c b/libc/sysdeps/linux/common/eventfd_read.c
+new file mode 100644
+index 0000000..75f2aaa
+--- /dev/null
++++ b/libc/sysdeps/linux/common/eventfd_read.c
+@@ -0,0 +1,27 @@
++/* Copyright (C) 2007-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 <errno.h>
++#include <unistd.h>
++#include <sys/eventfd.h>
++
++
++int
++eventfd_read (int fd, eventfd_t *value)
++{
++ return read (fd, value, sizeof (eventfd_t)) != sizeof (eventfd_t) ? -1 : 0;
++}
+diff --git a/libc/sysdeps/linux/common/eventfd_write.c b/libc/sysdeps/linux/common/eventfd_write.c
+new file mode 100644
+index 0000000..e1509cf
+--- /dev/null
++++ b/libc/sysdeps/linux/common/eventfd_write.c
+@@ -0,0 +1,28 @@
++/* Copyright (C) 2007-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 <errno.h>
++#include <unistd.h>
++#include <sys/eventfd.h>
++
++
++int
++eventfd_write (int fd, eventfd_t value)
++{
++ return write (fd, &value,
++ sizeof (eventfd_t)) != sizeof (eventfd_t) ? -1 : 0;
++}
+diff --git a/libc/sysdeps/linux/common/sys/eventfd.h b/libc/sysdeps/linux/common/sys/eventfd.h
+index 1bf785f..91b265b 100644
+--- a/libc/sysdeps/linux/common/sys/eventfd.h
++++ b/libc/sysdeps/linux/common/sys/eventfd.h
+@@ -33,16 +33,12 @@ __BEGIN_DECLS
+ value to COUNT. */
+ extern int eventfd (int __count, int __flags) __THROW;
+
+-#if 0 /* not (yet) implemented in uClibc */
+-
+ /* Read event counter and possibly wait for events. */
+ extern int eventfd_read (int __fd, eventfd_t *__value);
+
+ /* Increment event counter. */
+ extern int eventfd_write (int __fd, eventfd_t __value);
+
+-#endif
+-
+ __END_DECLS
+
+ #endif /* sys/eventfd.h */
+--
+1.9.0
+
diff --git a/meta/recipes-core/uclibc/uclibc-git/0002-wire-setns-syscall.patch b/meta/recipes-core/uclibc/uclibc-git/0002-wire-setns-syscall.patch
new file mode 100644
index 0000000000..94c6f68571
--- /dev/null
+++ b/meta/recipes-core/uclibc/uclibc-git/0002-wire-setns-syscall.patch
@@ -0,0 +1,68 @@
+From db575359d4b8164ad6c2ac5f36c7a50c065a2864 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Feb 2014 00:44:34 -0800
+Subject: [PATCH 2/3] wire setns syscall
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+---
+ libc/sysdeps/linux/common/Makefile.in | 1 +
+ libc/sysdeps/linux/common/bits/sched.h | 4 ++++
+ libc/sysdeps/linux/common/setns.c | 18 ++++++++++++++++++
+ 3 files changed, 23 insertions(+)
+ create mode 100644 libc/sysdeps/linux/common/setns.c
+
+diff --git a/libc/sysdeps/linux/common/Makefile.in b/libc/sysdeps/linux/common/Makefile.in
+index 45d2e21..10d9884 100644
+--- a/libc/sysdeps/linux/common/Makefile.in
++++ b/libc/sysdeps/linux/common/Makefile.in
+@@ -45,6 +45,7 @@ CSRC-$(UCLIBC_LINUX_SPECIFIC) += \
+ sendfile.c \
+ setfsgid.c \
+ setfsuid.c \
++ setns.c \
+ setresgid.c \
+ setresuid.c \
+ signalfd.c \
+diff --git a/libc/sysdeps/linux/common/bits/sched.h b/libc/sysdeps/linux/common/bits/sched.h
+index a5eb6ee..9436f66 100644
+--- a/libc/sysdeps/linux/common/bits/sched.h
++++ b/libc/sysdeps/linux/common/bits/sched.h
+@@ -85,6 +85,10 @@ extern int unshare (int __flags) __THROW;
+
+ /* Get index of currently used CPU. */
+ extern int sched_getcpu (void) __THROW;
++
++/* Switch process to namespace of type NSTYPE indicated by FD. */
++extern int setns (int __fd, int __nstype) __THROW;
++
+ #endif
+
+ __END_DECLS
+diff --git a/libc/sysdeps/linux/common/setns.c b/libc/sysdeps/linux/common/setns.c
+new file mode 100644
+index 0000000..376bf26
+--- /dev/null
++++ b/libc/sysdeps/linux/common/setns.c
+@@ -0,0 +1,18 @@
++/* vi: set sw=4 ts=4: */
++/*
++ * setns() for uClibc
++ *
++ * Copyright (C) 2014 Khem Raj <raj.khem@gmail.com>
++ *
++ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
++ */
++
++#include <sys/syscall.h>
++#include <sched.h>
++
++/*
++ * setns()
++ */
++#ifdef __NR_setns
++_syscall2(int, setns, int, fd, int, nstype)
++#endif
+--
+1.9.0
+
diff --git a/meta/recipes-core/uclibc/uclibc-git/0003-fcntl.h-Define-F_SETPIPE_SZ-and-F_GETPIPE_SZ.patch b/meta/recipes-core/uclibc/uclibc-git/0003-fcntl.h-Define-F_SETPIPE_SZ-and-F_GETPIPE_SZ.patch
new file mode 100644
index 0000000000..f4387db9c7
--- /dev/null
+++ b/meta/recipes-core/uclibc/uclibc-git/0003-fcntl.h-Define-F_SETPIPE_SZ-and-F_GETPIPE_SZ.patch
@@ -0,0 +1,377 @@
+From 7791d129d777e481a1e429815edcd05978438840 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 20 Feb 2014 01:12:14 -0800
+Subject: [PATCH 3/3] fcntl.h: Define F_SETPIPE_SZ and F_GETPIPE_SZ
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Upstream-Status: Pending
+---
+ libc/sysdeps/linux/alpha/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/arc/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/arm/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/bfin/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/cris/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/e1/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/frv/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/h8300/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/hppa/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/i386/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/i960/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/ia64/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/m68k/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/metag/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/microblaze/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/mips/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/nios/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/nios2/bits/fcntl.h | 2 ++
+ 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/v850/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/vax/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/x86_64/bits/fcntl.h | 2 ++
+ libc/sysdeps/linux/xtensa/bits/fcntl.h | 2 ++
+ 26 files changed, 52 insertions(+)
+
+diff --git a/libc/sysdeps/linux/alpha/bits/fcntl.h b/libc/sysdeps/linux/alpha/bits/fcntl.h
+index dd32529..a44be9e 100644
+--- a/libc/sysdeps/linux/alpha/bits/fcntl.h
++++ b/libc/sysdeps/linux/alpha/bits/fcntl.h
+@@ -94,6 +94,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* for F_[GET|SET]FD */
+diff --git a/libc/sysdeps/linux/arc/bits/fcntl.h b/libc/sysdeps/linux/arc/bits/fcntl.h
+index 71136da..1cb9600 100755
+--- a/libc/sysdeps/linux/arc/bits/fcntl.h
++++ b/libc/sysdeps/linux/arc/bits/fcntl.h
+@@ -87,6 +87,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/arm/bits/fcntl.h b/libc/sysdeps/linux/arm/bits/fcntl.h
+index f1a54f0..aedc154 100644
+--- a/libc/sysdeps/linux/arm/bits/fcntl.h
++++ b/libc/sysdeps/linux/arm/bits/fcntl.h
+@@ -99,6 +99,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/bfin/bits/fcntl.h b/libc/sysdeps/linux/bfin/bits/fcntl.h
+index c6cba56..e987824 100644
+--- a/libc/sysdeps/linux/bfin/bits/fcntl.h
++++ b/libc/sysdeps/linux/bfin/bits/fcntl.h
+@@ -98,6 +98,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/cris/bits/fcntl.h b/libc/sysdeps/linux/cris/bits/fcntl.h
+index acc5e25..029bb80 100644
+--- a/libc/sysdeps/linux/cris/bits/fcntl.h
++++ b/libc/sysdeps/linux/cris/bits/fcntl.h
+@@ -99,6 +99,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/e1/bits/fcntl.h b/libc/sysdeps/linux/e1/bits/fcntl.h
+index da699c8..2e0e6ba 100644
+--- a/libc/sysdeps/linux/e1/bits/fcntl.h
++++ b/libc/sysdeps/linux/e1/bits/fcntl.h
+@@ -93,6 +93,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/frv/bits/fcntl.h b/libc/sysdeps/linux/frv/bits/fcntl.h
+index 3aacc9d..5a7d9ef 100644
+--- a/libc/sysdeps/linux/frv/bits/fcntl.h
++++ b/libc/sysdeps/linux/frv/bits/fcntl.h
+@@ -95,6 +95,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/h8300/bits/fcntl.h b/libc/sysdeps/linux/h8300/bits/fcntl.h
+index d0b8310..45deec4 100644
+--- a/libc/sysdeps/linux/h8300/bits/fcntl.h
++++ b/libc/sysdeps/linux/h8300/bits/fcntl.h
+@@ -93,6 +93,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/hppa/bits/fcntl.h b/libc/sysdeps/linux/hppa/bits/fcntl.h
+index 1bb41ce..abb3372 100644
+--- a/libc/sysdeps/linux/hppa/bits/fcntl.h
++++ b/libc/sysdeps/linux/hppa/bits/fcntl.h
+@@ -96,6 +96,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* for F_[GET|SET]FL */
+diff --git a/libc/sysdeps/linux/i386/bits/fcntl.h b/libc/sysdeps/linux/i386/bits/fcntl.h
+index d48e62a..79b69d4 100644
+--- a/libc/sysdeps/linux/i386/bits/fcntl.h
++++ b/libc/sysdeps/linux/i386/bits/fcntl.h
+@@ -99,6 +99,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/i960/bits/fcntl.h b/libc/sysdeps/linux/i960/bits/fcntl.h
+index e2fcbe6..f6e145d 100644
+--- a/libc/sysdeps/linux/i960/bits/fcntl.h
++++ b/libc/sysdeps/linux/i960/bits/fcntl.h
+@@ -93,6 +93,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/ia64/bits/fcntl.h b/libc/sysdeps/linux/ia64/bits/fcntl.h
+index 1ff0ed5..fedefb6 100644
+--- a/libc/sysdeps/linux/ia64/bits/fcntl.h
++++ b/libc/sysdeps/linux/ia64/bits/fcntl.h
+@@ -95,6 +95,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/m68k/bits/fcntl.h b/libc/sysdeps/linux/m68k/bits/fcntl.h
+index d7beb6c..66df337 100644
+--- a/libc/sysdeps/linux/m68k/bits/fcntl.h
++++ b/libc/sysdeps/linux/m68k/bits/fcntl.h
+@@ -98,6 +98,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/metag/bits/fcntl.h b/libc/sysdeps/linux/metag/bits/fcntl.h
+index c4f641b..e10abd7 100644
+--- a/libc/sysdeps/linux/metag/bits/fcntl.h
++++ b/libc/sysdeps/linux/metag/bits/fcntl.h
+@@ -100,6 +100,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/microblaze/bits/fcntl.h b/libc/sysdeps/linux/microblaze/bits/fcntl.h
+index a2e3573..20b7597 100644
+--- a/libc/sysdeps/linux/microblaze/bits/fcntl.h
++++ b/libc/sysdeps/linux/microblaze/bits/fcntl.h
+@@ -98,6 +98,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ # define F_SETPIPE_SZ 1031 /* Set of pipe page size array */
+ # define F_GETPIPE_SZ 1032 /* Get of pipe page size array */
+ #endif
+diff --git a/libc/sysdeps/linux/mips/bits/fcntl.h b/libc/sysdeps/linux/mips/bits/fcntl.h
+index 4291f6e..8c4c115 100644
+--- a/libc/sysdeps/linux/mips/bits/fcntl.h
++++ b/libc/sysdeps/linux/mips/bits/fcntl.h
+@@ -111,6 +111,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/nios/bits/fcntl.h b/libc/sysdeps/linux/nios/bits/fcntl.h
+index 5854c18..36ca766 100644
+--- a/libc/sysdeps/linux/nios/bits/fcntl.h
++++ b/libc/sysdeps/linux/nios/bits/fcntl.h
+@@ -96,6 +96,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/nios2/bits/fcntl.h b/libc/sysdeps/linux/nios2/bits/fcntl.h
+index d7beb6c..66df337 100644
+--- a/libc/sysdeps/linux/nios2/bits/fcntl.h
++++ b/libc/sysdeps/linux/nios2/bits/fcntl.h
+@@ -98,6 +98,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/powerpc/bits/fcntl.h b/libc/sysdeps/linux/powerpc/bits/fcntl.h
+index 217f54a..d150a31 100644
+--- a/libc/sysdeps/linux/powerpc/bits/fcntl.h
++++ b/libc/sysdeps/linux/powerpc/bits/fcntl.h
+@@ -99,6 +99,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/sh/bits/fcntl.h b/libc/sysdeps/linux/sh/bits/fcntl.h
+index 5c9f047..aceaec6 100644
+--- a/libc/sysdeps/linux/sh/bits/fcntl.h
++++ b/libc/sysdeps/linux/sh/bits/fcntl.h
+@@ -99,6 +99,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/sh64/bits/fcntl.h b/libc/sysdeps/linux/sh64/bits/fcntl.h
+index ff741cb..b319e8b 100644
+--- a/libc/sysdeps/linux/sh64/bits/fcntl.h
++++ b/libc/sysdeps/linux/sh64/bits/fcntl.h
+@@ -95,6 +95,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/sparc/bits/fcntl.h b/libc/sysdeps/linux/sparc/bits/fcntl.h
+index 235d2ad..7e80d9e 100644
+--- a/libc/sysdeps/linux/sparc/bits/fcntl.h
++++ b/libc/sysdeps/linux/sparc/bits/fcntl.h
+@@ -106,6 +106,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ #if __WORDSIZE == 64
+diff --git a/libc/sysdeps/linux/v850/bits/fcntl.h b/libc/sysdeps/linux/v850/bits/fcntl.h
+index d0b8310..45deec4 100644
+--- a/libc/sysdeps/linux/v850/bits/fcntl.h
++++ b/libc/sysdeps/linux/v850/bits/fcntl.h
+@@ -93,6 +93,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/vax/bits/fcntl.h b/libc/sysdeps/linux/vax/bits/fcntl.h
+index ff5bff3..a30d5e1 100644
+--- a/libc/sysdeps/linux/vax/bits/fcntl.h
++++ b/libc/sysdeps/linux/vax/bits/fcntl.h
+@@ -92,6 +92,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FL. */
+diff --git a/libc/sysdeps/linux/x86_64/bits/fcntl.h b/libc/sysdeps/linux/x86_64/bits/fcntl.h
+index a899dcf..02e011d 100644
+--- a/libc/sysdeps/linux/x86_64/bits/fcntl.h
++++ b/libc/sysdeps/linux/x86_64/bits/fcntl.h
+@@ -113,6 +113,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+diff --git a/libc/sysdeps/linux/xtensa/bits/fcntl.h b/libc/sysdeps/linux/xtensa/bits/fcntl.h
+index 5d28547..4e9aa7e 100644
+--- a/libc/sysdeps/linux/xtensa/bits/fcntl.h
++++ b/libc/sysdeps/linux/xtensa/bits/fcntl.h
+@@ -99,6 +99,8 @@
+ # define F_NOTIFY 1026 /* Request notfications on a directory. */
+ # define F_DUPFD_CLOEXEC 1030 /* Duplicate file descriptor with
+ close-on-exit set on new fd. */
++# define F_SETPIPE_SZ 1031 /* Set pipe page size array. */
++# define F_GETPIPE_SZ 1032 /* Get pipe page size array. */
+ #endif
+
+ /* For F_[GET|SET]FD. */
+--
+1.9.0
+