mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Mikko Rapeli <mikko.rapeli@iki.fi>
To: linux-kernel@vger.kernel.org
Cc: Mikko Rapeli <mikko.rapeli@iki.fi>
Subject: [PATCH v05 03/72] headers_compile_test.sh: add GNU libc compatibility test
Date: Mon, 22 Aug 2016 20:32:20 +0200	[thread overview]
Message-ID: <1471890809-4383-4-git-send-email-mikko.rapeli@iki.fi> (raw)
In-Reply-To: <1471890809-4383-1-git-send-email-mikko.rapeli@iki.fi>

The test is to compile all kernel uapi headers against the
non-conflicting set of all GNU libc headers. The test covers
variants where kernel header is included before libc header
and libc header before kernel header.

Tested in Debian unstable with libc6 version 2.22-4.

Example execution:

$ make headers_install && \
  cd usr/include && \
  ../../scripts/headers_compile_test.sh -lk
Testing that /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.rwDf0l
/libc_headers.h compiles
cc -Wall -c -nostdinc -I /usr/lib/gcc/i686-linux-gnu/6/include -I /usr/lib/gcc/i
686-linux-gnu/6/include-fixed -I . -I /home/mcfrisk/src/linux-2.6/usr/headers_co
mpile_test_include.rwDf0l -I /home/mcfrisk/src/linux-2.6/usr/headers_compile_tes
t_include.rwDf0l/i686-linux-gnu -o /dev/null ./drm/i810_drm.h
PASSED: ./drm/i810_drm.h
cc -Wall -c -nostdinc -I /usr/lib/gcc/i686-linux-gnu/6/include -I /usr/lib/gcc/i
686-linux-gnu/6/include-fixed -I . -I /home/mcfrisk/src/linux-2.6/usr/headers_co
mpile_test_include.rwDf0l -I /home/mcfrisk/src/linux-2.6/usr/headers_compile_tes
t_include.rwDf0l/i686-linux-gnu -o /dev/null ./drm/i810_drm.h_libc_before_kernel
.h
PASSED libc before kernel test: ./drm/i810_drm.h
...
cc -Wall -c -nostdinc -I /usr/lib/gcc/i686-linux-gnu/6/include -I /usr/lib/gcc/i
686-linux-gnu/6/include-fixed -I . -I /home/mcfrisk/src/linux-2.6/usr/headers_co
mpile_test_include.rwDf0l -I /home/mcfrisk/src/linux-2.6/usr/headers_compile_tes
t_include.rwDf0l/i686-linux-gnu -o /dev/null ./linux/coda.h
PASSED: ./linux/coda.h
cc -Wall -c -nostdinc -I /usr/lib/gcc/i686-linux-gnu/6/include -I /usr/lib/gcc/i
686-linux-gnu/6/include-fixed -I . -I /home/mcfrisk/src/linux-2.6/usr/headers_co
mpile_test_include.rwDf0l -I /home/mcfrisk/src/linux-2.6/usr/headers_compile_tes
t_include.rwDf0l/i686-linux-gnu -o /dev/null ./linux/coda.h_libc_before_kernel.h
In file included from ./linux/coda.h_libc_before_kernel.h:2:0:
./linux/coda.h:108:16: error: conflicting types for ‘dev_t’
 typedef u_long dev_t;
                ^~~~~
In file included from /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_inclu
de.rwDf0l/aio.h:26:0,
                 from /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_inclu
de.rwDf0l/libc_headers.h:1,
                 from ./linux/coda.h_libc_before_kernel.h:1:
/home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.rwDf0l/sys/types.h:
60:17: note: previous declaration of ‘dev_t’ was here
 typedef __dev_t dev_t;
                 ^~~~~
In file included from ./linux/coda.h_libc_before_kernel.h:2:0:
./linux/coda.h:109:16: error: conflicting types for ‘caddr_t’
 typedef void * caddr_t;
                ^~~~~~~
In file included from /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.rwDf0l/aio.h:26:0,
                 from /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.rwDf0l/libc_headers.h:1,
                 from ./linux/coda.h_libc_before_kernel.h:1:
/home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.rwDf0l/sys/types.h:116:19: note: previous declaration of ‘caddr_t’ was here
 typedef __caddr_t caddr_t;
                   ^~~~~~~
FAILED libc before kernel test: ./linux/coda.h
...
Kernel header compile test statistics:

0 files failed the kernel header compile test.
784 files passed the kernel header compile test.

libc and kernel header compatibility test statistics:
39 files failed libc before kernel include test.
745 files passed libc before kernel include test.

Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
---
 scripts/headers_compile_test.sh | 329 ++++++++++++++++++++++++++++++++++++++--
 1 file changed, 319 insertions(+), 10 deletions(-)

diff --git a/scripts/headers_compile_test.sh b/scripts/headers_compile_test.sh
index e13f533..94021b6 100755
--- a/scripts/headers_compile_test.sh
+++ b/scripts/headers_compile_test.sh
@@ -15,14 +15,19 @@ Execute in root directory of exported kernel headers in Linux kernel source
 tree. Sets up gcc and libc headers without existing kernel headers to
 a temporary environment and tries to compile all exported header files
 from current directory against them. Return value is zero if all tests pass,
-non-zero if something goes wrong during execution, or the amount of files
-which failed the compile test.
+non-zero if something goes wrong during execution or if any file failed
+the compile tests.
 
 Supported arguments:
 
-    -h|--help       print help
-    -k|--keep       don't cleanup temporary header files and directories
-    -v|--verbose    print more verbose output
+    -h|--help          print help
+    -k|--keep          don't cleanup temporary header files and directories
+    -lk|--libc-kernel  test for conflicts between kernel and libc headers
+                       when libc headers are included before kernel headers
+    -kl|--kernel-libc  test for conflicts between kernel and libc headers
+                       when kernel headers are included before libc headers
+    -l|--libc          test both -lk and -kl
+    -v|--verbose       print more verbose output
 
 Example in Linux kernel source tree:
 
@@ -38,6 +43,9 @@ set -euo pipefail
 
 KEEP=0
 HELP=0
+LIBC_TEST=0
+LIBC_KERNEL_TEST=0
+KERNEL_LIBC_TEST=0
 
 # command line arguments
 for p in "$@"; do
@@ -45,6 +53,19 @@ for p in "$@"; do
 		-k|--keep)
 			KEEP=1
 		;;
+		-l|--libc)
+			LIBC_TEST=1
+			LIBC_KERNEL_TEST=1
+			KERNEL_LIBC_TEST=1
+		;;
+		-lk|--libc-kernel)
+			LIBC_TEST=1
+			LIBC_KERNEL_TEST=1
+		;;
+		-kl|--kernel-libc)
+			LIBC_TEST=1
+			KERNEL_LIBC_TEST=1
+		;;
 		-h|--help)
 			HELP=1
 		;;
@@ -138,6 +159,164 @@ for d in $LIBC; do
 	fi
 done
 
+# A single header with all non-conflicting libc headers to test kernel
+# headers against libc headers for conflicts.
+if [ "$LIBC_TEST" != 0 ]; then
+	# List taken from Debian unstable libc6 version 2.21-9.
+	# Some glibc headers conflict with each other so they
+	# are filtered out. Not perfect but better than nothing.
+        #
+	# $ for f in $( egrep "\.h$" /var/lib/dpkg/info/libc6-dev\:i386.list | sed -e 's|/usr/include/||'| sort | grep -v arpa | grep -v linux-gnu | grep -v rpcsvc | grep -v regexp.h | grep -v rpc | grep -v scsi | grep -v talkd ); do echo "#include <$f>"; done > libc_headers.h
+
+	cat > "$COMPILE_TEST_INC/libc_headers.h" << EOF_LIBC_HEADERS
+#include <aio.h>
+#include <aliases.h>
+#include <alloca.h>
+#include <argp.h>
+#include <argz.h>
+#include <ar.h>
+#include <assert.h>
+#include <byteswap.h>
+#include <complex.h>
+#include <cpio.h>
+#include <crypt.h>
+#include <ctype.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <elf.h>
+#include <endian.h>
+#include <envz.h>
+#include <err.h>
+#include <errno.h>
+#include <error.h>
+#include <execinfo.h>
+#include <fcntl.h>
+#include <features.h>
+#include <fenv.h>
+#include <fmtmsg.h>
+#include <fnmatch.h>
+#include <fstab.h>
+#include <fts.h>
+#include <ftw.h>
+#include <_G_config.h>
+#include <gconv.h>
+#include <getopt.h>
+#include <glob.h>
+#include <gnu-versions.h>
+#include <grp.h>
+#include <gshadow.h>
+#include <iconv.h>
+#include <ifaddrs.h>
+#include <inttypes.h>
+#include <langinfo.h>
+#include <lastlog.h>
+#include <libgen.h>
+#include <libintl.h>
+#include <libio.h>
+#include <limits.h>
+#include <link.h>
+#include <locale.h>
+#include <malloc.h>
+#include <math.h>
+#include <mcheck.h>
+#include <memory.h>
+#include <mntent.h>
+#include <monetary.h>
+#include <mqueue.h>
+#include <netash/ash.h>
+#include <netatalk/at.h>
+#include <netax25/ax25.h>
+#include <netdb.h>
+#include <neteconet/ec.h>
+#include <net/ethernet.h>
+#include <net/if_arp.h>
+#include <net/if.h>
+#include <net/if_packet.h>
+#include <net/if_ppp.h>
+#include <net/if_shaper.h>
+#include <net/if_slip.h>
+#include <netinet/ether.h>
+#include <netinet/icmp6.h>
+#include <netinet/if_ether.h>
+#include <netinet/if_fddi.h>
+#include <netinet/if_tr.h>
+#include <netinet/igmp.h>
+#include <netinet/in.h>
+#include <netinet/in_systm.h>
+#include <netinet/ip6.h>
+#include <netinet/ip.h>
+#include <netinet/ip_icmp.h>
+#include <netinet/tcp.h>
+#include <netinet/udp.h>
+#include <netipx/ipx.h>
+#include <netiucv/iucv.h>
+#include <netpacket/packet.h>
+#include <net/ppp-comp.h>
+#include <net/ppp_defs.h>
+#include <netrom/netrom.h>
+#include <netrose/rose.h>
+#include <net/route.h>
+#include <nfs/nfs.h>
+#include <nl_types.h>
+#include <nss.h>
+#include <obstack.h>
+#include <paths.h>
+#include <poll.h>
+#include <printf.h>
+#include <protocols/routed.h>
+#include <protocols/rwhod.h>
+#include <protocols/timed.h>
+#include <pthread.h>
+#include <pty.h>
+#include <pwd.h>
+#include <re_comp.h>
+#include <regex.h>
+#include <resolv.h>
+#include <sched.h>
+#include <search.h>
+#include <semaphore.h>
+#include <setjmp.h>
+#include <sgtty.h>
+#include <shadow.h>
+#include <signal.h>
+#include <spawn.h>
+#include <stab.h>
+#include <stdc-predef.h>
+#include <stdint.h>
+#include <stdio_ext.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <strings.h>
+#include <stropts.h>
+#include <syscall.h>
+#include <sysexits.h>
+#include <syslog.h>
+#include <tar.h>
+#include <termio.h>
+#include <termios.h>
+#include <tgmath.h>
+#include <thread_db.h>
+#include <time.h>
+#include <ttyent.h>
+#include <uchar.h>
+#include <ucontext.h>
+#include <ulimit.h>
+#include <unistd.h>
+#include <ustat.h>
+#include <utime.h>
+#include <utmp.h>
+#include <utmpx.h>
+#include <values.h>
+#include <wait.h>
+#include <wchar.h>
+#include <wctype.h>
+#include <wordexp.h>
+#include <xlocale.h>
+EOF_LIBC_HEADERS
+
+fi # LIBC_TEST
+
 # Simulate libc headers without kernel headers by removing
 # all known kernel header dirs from the copied libc ones.
 # This seems to magically work.
@@ -170,11 +349,32 @@ if [ "$GCC_INC"foobar == "foobar" ]; then
 fi
 set -u
 
-# For each header file, try to compile it using the headers we prepared.
+# sanity check: test that plain libc headers compile
+if [ "$LIBC_TEST" != 0 ]; then
+	echo "Testing that $COMPILE_TEST_INC/libc_headers.h compiles"
+	$CC -Wall -c -nostdinc $GCC_INC -I . \
+		-I "$COMPILE_TEST_INC" \
+		-I "$COMPILE_TEST_INC/$ARCH_TRIPLET" \
+		-o /dev/null \
+		"$COMPILE_TEST_INC/libc_headers.h"
+fi
+
+# Summary counters:
 _FAILED=0
 _PASSED=0
+_LIBC_FAILED=0
+_LIBC_PASSED=0
+_LIBC_BEFORE_KERNEL_FAILED=0
+_LIBC_BEFORE_KERNEL_PASSED=0
+_KERNEL_BEFORE_LIBC_FAILED=0
+_KERNEL_BEFORE_LIBC_PASSED=0
+
+# For each header file, try to compile it using the headers we prepared.
 for f in $( find . -name "*\.h" | xargs ); do
 	_FAIL=0
+	_FAIL_LIBC=0
+	_FAIL_LIBC_BEFORE_KERNEL=0
+	_FAIL_KERNEL_BEFORE_LIBC=0
 
 	# compile test, CC not quoted to support ccache
 	echo $CC -Wall -c -nostdinc $GCC_INC -I . -I "$COMPILE_TEST_INC" -I "$COMPILE_TEST_INC/$ARCH_TRIPLET" -o /dev/null "$f"
@@ -189,10 +389,119 @@ for f in $( find . -name "*\.h" | xargs ); do
 		echo "PASSED: $f"
 		_PASSED="$(( _PASSED + 1))"
 	fi
+
+	# libc header conflict tests
+	if [ "$LIBC_TEST" != 0 ]; then
+		_LIBC_BEFORE_KERNEL="$f"_libc_before_kernel.h
+		_KERNEL_BEFORE_LIBC="$f"_kernel_before_libc.h
+
+		# libc header included before kernel header
+		if [ "$LIBC_KERNEL_TEST" != 0 ]; then
+			cat > "$_LIBC_BEFORE_KERNEL" << EOF_LIBC_BEFORE_KERNEL
+#include <libc_headers.h>
+#include <$( echo "$f" | cut -c3- )>
+EOF_LIBC_BEFORE_KERNEL
+			echo \
+				$CC -Wall -c -nostdinc $GCC_INC \
+				-I . -I "$COMPILE_TEST_INC" \
+				-I "$COMPILE_TEST_INC/$ARCH_TRIPLET" \
+				-o /dev/null "$_LIBC_BEFORE_KERNEL"
+			$CC -Wall -c -nostdinc $GCC_INC \
+				-I . -I "$COMPILE_TEST_INC" \
+				-I "$COMPILE_TEST_INC/$ARCH_TRIPLET" \
+				-o /dev/null "$_LIBC_BEFORE_KERNEL" \
+				|| _FAIL_LIBC_BEFORE_KERNEL=1
+
+			# report errors
+			if [ "$_FAIL_LIBC_BEFORE_KERNEL" -gt 0 ]; then
+				echo "FAILED libc before kernel test: $f"
+				_LIBC_BEFORE_KERNEL_FAILED="$(( _LIBC_BEFORE_KERNEL_FAILED + 1 ))"
+			else
+				echo "PASSED libc before kernel test: $f"
+				_LIBC_BEFORE_KERNEL_PASSED="$(( _LIBC_BEFORE_KERNEL_PASSED + 1))"
+			fi
+		fi
+
+		# kernel header included before libc
+		if [ "$KERNEL_LIBC_TEST" != 0 ]; then
+			cat > "$_KERNEL_BEFORE_LIBC" << EOF_KERNEL_BEFORE_LIBC
+#include <$( echo "$f" | cut -c3- )>
+#include <libc_headers.h>
+EOF_KERNEL_BEFORE_LIBC
+			echo \
+				$CC -Wall -c -nostdinc $GCC_INC \
+				-I . -I "$COMPILE_TEST_INC" \
+				-I "$COMPILE_TEST_INC/$ARCH_TRIPLET" \
+				-o /dev/null "$_KERNEL_BEFORE_LIBC"
+			$CC -Wall -c -nostdinc $GCC_INC \
+				-I . -I "$COMPILE_TEST_INC" \
+				-I "$COMPILE_TEST_INC/$ARCH_TRIPLET" \
+				-o /dev/null "$_KERNEL_BEFORE_LIBC" \
+				|| _FAIL_KERNEL_BEFORE_LIBC=1
+
+			# report errors
+			if [ "$_FAIL_KERNEL_BEFORE_LIBC" -gt 0 ]; then
+				echo "FAILED kernel before libc test: $f"
+				_KERNEL_BEFORE_LIBC_FAILED="$(( _KERNEL_BEFORE_LIBC_FAILED + 1 ))"
+			else
+				echo "PASSED kernel before libc test: $f"
+				_KERNEL_BEFORE_LIBC_PASSED="$(( _KERNEL_BEFORE_LIBC_PASSED + 1))"
+			fi
+		fi
+
+		# libc summary
+		if [ "$_FAIL_LIBC_BEFORE_KERNEL" -gt 0 -o "$_FAIL_KERNEL_BEFORE_LIBC" -gt 0 ]; then
+			_LIBC_FAILED="$(( _LIBC_FAILED + 1))"
+		else
+			_LIBC_PASSED="$(( _LIBC_PASSED + 1))"
+		fi
+
+		if [ "$KEEP" = "0" ]; then
+			rm -f "$_LIBC_BEFORE_KERNEL" "$_KERNEL_BEFORE_LIBC"
+		fi
+	fi # LIBC_TEST
 done
 
-echo Statistics:
-echo "$_FAILED files failed the compile test."
-echo "$_PASSED files passed the compile test."
+cat << EOF_STATS
+
+Kernel header compile test statistics:
+
+$_FAILED files failed the kernel header compile test.
+$_PASSED files passed the kernel header compile test.
+
+EOF_STATS
+
+if [ "$LIBC_TEST" != 0 ]; then
+	cat << EOF_LIBC_STATS
+libc and kernel header compatibility test statistics:
+EOF_LIBC_STATS
+
+if [ "$LIBC_KERNEL_TEST" != 0 ] && [ "$KERNEL_LIBC_TEST" != 0 ]; then
+	cat << EOF_LIBC_COMBINED
+$_LIBC_FAILED files failed the libc compatibility test.
+$_LIBC_PASSED files passed the libc compatibility test.
+EOF_LIBC_COMBINED
+fi
+
+if [ "$LIBC_KERNEL_TEST" != 0 ]; then
+	cat << EOF_LIBC_KERNEL
+$_LIBC_BEFORE_KERNEL_FAILED files failed libc before kernel include test.
+$_LIBC_BEFORE_KERNEL_PASSED files passed libc before kernel include test.
+EOF_LIBC_KERNEL
+fi
+
+if [ "$KERNEL_LIBC_TEST" != 0 ]; then
+	cat << EOF_KERNEL_LIBC
+$_KERNEL_BEFORE_LIBC_FAILED files failed kernel before libc include test.
+$_KERNEL_BEFORE_LIBC_PASSED files passed kernel before libc include test.
+EOF_KERNEL_LIBC
+fi
 
-exit "$_FAILED"
+fi # LIBC_TEST
+
+# return value, summary of all failures.
+if [ "$(( $_FAILED + $_LIBC_BEFORE_KERNEL_FAILED + $_KERNEL_BEFORE_LIBC_FAILED ))" != 0 ]; then
+	exit 1
+else
+	exit 0
+fi
-- 
2.8.1

  parent reply	other threads:[~2016-08-22 18:35 UTC|newest]

Thread overview: 141+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-22 18:32 [PATCH v05 00/72] Userspace compile test and fixes for exported uapi header files Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 01/72] headers_install.sh: enhance error handling Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 02/72] scripts/headers_compile_test.sh: compile test script for exported headers Mikko Rapeli
2016-08-22 18:32 ` Mikko Rapeli [this message]
2016-08-22 18:32 ` [PATCH v05 04/72] dm-log-userspace.h: use __u32, __s32 and __u64 from linux/types.h Mikko Rapeli
2016-08-23 13:57   ` [dm-devel] " Bart Van Assche
2016-08-23 14:28     ` Bart Van Assche
2016-08-23 20:42       ` Mikko Rapeli
2016-08-25  4:24         ` Bart Van Assche
2016-08-25  6:57           ` Mikko Rapeli
2016-08-28  6:42           ` [PATCH v06] uapi dm-log-userspace.h: use __u32, __s32, __u64 and __s64 " Mikko Rapeli
2016-08-28 16:07             ` Bart Van Assche
2016-08-22 18:32 ` [PATCH v05 05/72] hsi_char.h: use __u32 " Mikko Rapeli
2016-08-22 20:54   ` Sebastian Reichel
2016-08-22 18:32 ` [PATCH v05 06/72] include/uapi/linux/hsi/cs-protocol.h: include linux/time.h Mikko Rapeli
2016-08-22 20:52   ` Sebastian Reichel
2016-08-23  6:55     ` Mikko Rapeli
2016-08-28  7:00     ` Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 07/72] cld.h: use __u8, __u16, __s16, __u32 and __s64 from linux/types.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 08/72] rds.h: " Mikko Rapeli
2016-08-22 18:52   ` Sowmini Varadhan
2016-08-23 20:46     ` Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 09/72] sctp.h: use __u8 and __u32 " Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 10/72] scsi_bsg_fc.h: use __u8, __u32 and __u64 " Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 11/72] scsi_netlink.h: use __u8, __u16 " Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 12/72] scsi_netlink_fc.h: use __u16, __u32 " Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 13/72] include/uapi/linux/sysctl.h: use __kernel_size_t instead of size_t Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 14/72] include/uapi/asm-generic/ipcbuf.h: include linux/posix_types.h Mikko Rapeli
2016-08-24 15:36   ` Arnd Bergmann
2016-11-15 19:31     ` Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 15/72] include/uapi/asm-generic/msgbuf.h: include asm/ipcbuf.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 16/72] include/uapi/asm-generic/shmbuf.h: include fixes Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 17/72] asm-generic/sembuf.h: include asm/posix_types.h and asm/ipcbuf.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 18/72] include/uapi/asm-generic/signal.h: use __kernel_size_t instead of size_t Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 19/72] include/uapi/linux/socket.h: include sys/socket.h in userspace Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 20/72] include/uapi/linux/rds.h: include linux/socket.h and linux/types.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 21/72] include/uapi/linux/if_pppox.h: include linux/if.h Mikko Rapeli
2016-08-22 19:37   ` Stephen Hemminger
2016-08-22 23:26     ` David Miller
2016-08-23  6:41     ` Mikko Rapeli
2016-08-22 23:33   ` David Miller
2016-08-22 18:32 ` [PATCH v05 22/72] include/uapi/linux/if_tunnel.h: include linux/if.h, linux/ip.h and linux/in6.h Mikko Rapeli
2016-08-22 23:28   ` David Miller
2016-08-22 18:32 ` [PATCH v05 23/72] include/uapi/linux/ipv6_route.h: include linux/in6.h Mikko Rapeli
2016-08-22 23:28   ` David Miller
2016-08-22 18:32 ` [PATCH v05 24/72] " Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 25/72] include/uapi/linux/if_pppol2tp.h: include linux/in.h and linux/in6.h Mikko Rapeli
2016-08-22 23:31   ` David Miller
2016-08-22 18:32 ` [PATCH v05 26/72] include/uapi/linux/if_pppox.h: " Mikko Rapeli
2016-08-22 23:31   ` David Miller
2016-08-22 18:32 ` [PATCH v05 27/72] linux/if.h linux/hdlc/ioctl.h: move IFNAMSIZ definition to hdlc/ioctl.h Mikko Rapeli
2016-08-22 23:30   ` David Miller
2016-08-23  7:03     ` Frans Klaver
2016-08-23  7:05       ` David Miller
2016-08-23  8:03         ` Frans Klaver
2016-08-24  6:57           ` Frans Klaver
2016-11-15 19:39             ` Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 28/72] include/uapi/linux/packet_diag.h: include linux/netdevice.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 29/72] include/uapi/linux/llc.h: include linux/if.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 30/72] include/uapi/linux/mqueue.h: include linux/types.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 31/72] include/uapi/linux/mroute.h: include linux/in.h Mikko Rapeli
2016-08-22 23:30   ` David Miller
2016-08-22 18:32 ` [PATCH v05 32/72] include/uapi/linux/dlm_netlink.h: include linux/dlmconstants.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 33/72] include/uapi/linux/ip6_tunnel.h: include linux/if.h and linux/in6.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 34/72] include/uapi/linux/errqueue.h: include linux/time.h Mikko Rapeli
2016-08-22 21:32   ` kbuild test robot
2016-08-23  7:02     ` Mikko Rapeli
2016-08-22 22:03   ` kbuild test robot
2016-08-22 23:24   ` kbuild test robot
2016-08-22 18:32 ` [PATCH v05 35/72] include/uapi/asm-generic/ucontext.h: include asm/signal.h and asm/sigcontext.h Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 36/72] arch/x86/include/uapi/asm/signal.h: use __kernel_size_t instead of size_t Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 37/72] include/uapi/linux/auto_fs.h: include linux/limits.h Mikko Rapeli
2016-08-23  0:42   ` Ian Kent
2016-08-22 18:32 ` [PATCH v05 38/72] include/uapi/linux/openvswitch.h: use __u32 from linux/types.h Mikko Rapeli
2016-08-22 19:39   ` Stephen Hemminger
2016-08-22 23:27     ` David Miller
2016-08-23  6:49     ` Mikko Rapeli
2016-08-22 23:31   ` David Miller
2016-08-22 18:32 ` [PATCH v05 39/72] include/uapi/linux/target_core_user.h: use __u8, __u16, __u32 and __u64 " Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 40/72] include/uapi/linux/omapfb.h: use __kernel_size_t instead of size_t Mikko Rapeli
2016-08-22 18:32 ` [PATCH v05 41/72] include/uapi/linux/atm_zatm.h: include linux/time.h Mikko Rapeli
2016-08-22 23:30   ` David Miller
2016-08-22 18:32 ` [PATCH v05 42/72] include/uapi/linux/scc.h: include linux/sockios.h Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 43/72] include/uapi/linux/btrfs.h: define NULL Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 44/72] include/uapi/linux/kexec.h: use __kernel_size_t instead of size_t Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 45/72] include/uapi/linux/reiserfs_xattr.h: " Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 46/72] include/uapi/linux/patchkey.h: change #error to #warning if file included directly Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 47/72] include/uapi/linux/coda.h: use __kernel_pid_t and add u_short etc definitions for userspace Mikko Rapeli
2016-08-23  3:08   ` kbuild test robot
2016-08-23 20:53     ` Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 48/72] include/uapi/linux/android/binder.h: use __kernel_pid_t and __kernel_uid_t Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 49/72] arch/x86/include/uapi/asm/sembuf.h: include linux/types.h and linux/ipc.h Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 50/72] include/uapi/linux/fuse.h: use linux/types.h also in userspace Mikko Rapeli
2016-08-23  7:16   ` Miklos Szeredi
2016-08-23  7:39     ` Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 51/72] include/linux/ipmi-fru.h: use linux/types.h instead of stdint.h Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 52/72] include/linux/sdb.h: use linux/types.h types " Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 53/72] include/linux/xz.h: " Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 54/72] include/uapi/xen/privcmd.h: fix compilation in userspace Mikko Rapeli
2016-08-23 10:02   ` Russell King - ARM Linux
2016-08-23 18:13     ` Stefano Stabellini
2016-08-23 20:38       ` Mikko Rapeli
2016-08-23 21:06         ` Stefano Stabellini
2016-08-22 18:33 ` [PATCH v05 55/72] include/uapi/xen/gntdev.h: include xen/privcmd.h and define grant_ref_t Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 56/72] include/uapi/xen/evtchn.h: include xen/privcmd.h Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 57/72] coda_psdev.h: move upc_req definition from uapi to kernel side headers Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 58/72] include/uapi/linux/elfcore.h: remove non-compiling userspace parts Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 59/72] include/uapi/linux/errqueue.h: include time.h in userspace Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 60/72] arch/arm/include/uapi/asm/signal.h: use __kernel_size_t instead of size_t Mikko Rapeli
2016-08-24 15:02   ` Arnd Bergmann
2016-11-16 14:11     ` Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 61/72] include/uapi/rdma/rdma_user_rxe.h: include in.h and in6.h Mikko Rapeli
2016-08-23 15:03   ` Doug Ledford
2016-08-25 14:00   ` Moni Shoua
2016-08-22 18:33 ` [PATCH v05 62/72] include/uapi/linux/openvswitch.h: use __u32 from linux/types.h Mikko Rapeli
2016-08-22 23:32   ` David Miller
2016-08-22 18:33 ` [PATCH v05 63/72] include/uapi/sound/Kbuild: remove sound/asoc.h from userspace Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 64/72] include/uapi/linux/ipx.h: fix conflicting defitions with glibc netipx/ipx.h Mikko Rapeli
2016-08-22 23:33   ` David Miller
2016-08-22 18:33 ` [PATCH v05 65/72] uapi fcntl.h: glibc fcntl.h header file compatibility fixes Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 66/72] uapi icmp.h: glibc netinet/ip_icmp.h " Mikko Rapeli
2016-08-22 23:33   ` David Miller
2016-08-23 21:21     ` Mikko Rapeli
2016-08-23 23:38       ` David Miller
2016-08-23 23:36   ` David Miller
2016-08-22 18:33 ` [PATCH v05 67/72] uapi uio.h: glibc sys/uio.h " Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 68/72] uapi ax25.h: glibc netax25/ax25.h " Mikko Rapeli
2016-08-22 23:33   ` David Miller
2016-08-22 18:33 ` [PATCH v05 69/72] uapi rose.h: glibc netrose/rose.h " Mikko Rapeli
2016-08-22 23:33   ` David Miller
2016-08-26 15:38   ` walter harms
2016-08-28  5:59     ` Mikko Rapeli
2016-08-28 12:37       ` walter harms
2016-08-29 19:34       ` David Ranch
2016-08-30  7:34         ` Mikko Rapeli
2016-11-16 19:07         ` Mikko Rapeli
2016-11-16 22:17           ` David Ranch
2016-08-22 18:33 ` [PATCH v05 70/72] uapi time.h: glibc time.h " Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 71/72] uapi term*.h: glibc termios.h " Mikko Rapeli
2016-08-22 18:33 ` [PATCH v05 72/72] uapi route.h: glibc net/route.h compat fix Mikko Rapeli
2016-08-22 23:32   ` David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1471890809-4383-4-git-send-email-mikko.rapeli@iki.fi \
    --to=mikko.rapeli@iki.fi \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®