From: Ben Hutchings <ben@decadent.org.uk>
To: David Miller <davem@davemloft.net>
Cc: netdev@vger.kernel.org
Subject: [PATCH 00/12] Fix net header dependencies
Date: Mon, 08 Aug 2011 14:15:02 +0100 [thread overview]
Message-ID: <1312809302.2591.1139.camel@deadeye> (raw)
In-Reply-To: <20110807.224829.233892140193944735.davem@davemloft.net>
[-- Attachment #1.1: Type: text/plain, Size: 3405 bytes --]
Various networking headers depend on definitions from others which they
don't include. We can't fix all of these, because some definitions are
duplicated between kernel headers and glibc headers and we cannot tell
which is the right one to include. We also have to be wary of
introducing a dependency cycle.
The attached test program tests whether various header inclusion
sequences work, in the sense that compilation is successful. I used gcc
4.6.1, eglibc 2.13, and kernel headers from Linux 3.0 initially This
resulted in 120 failures. After the following changes, there are 65
failures and no regressions.
Ben.
Ben Hutchings (12):
headers, pppox: Add missing #include to <linux/if_pppox.h>
headers, ax25: Add missing #include to <linux/netrom.h>,
<linux/rose.h>
headers, pppol2tp: Use __kernel_pid_t in <linux/pppol2tp.h>
headers, net: Use __kernel_sa_family_t in more definitions shared
with userland
headers, net: Define struct __kernel_sockaddr, replacing struct
sockaddr
headers, netfilter: Use kernel type names __u8, __u16, __u32
headers, tipc: Add missing #include to <linux/tipc_config.h> for
userland
headers, netfilter: Add missing #include <limits.h> for userland
headers, xtables: Add missing #include <linux/netfilter.h>
headers, can: Add missing #include to <linux/can/bcm.h>
headers, scc: Add missing #include to <linux/scc.h>
headers, ppp: Add missing #include to <linux/if_ppp.h>
include/linux/atalk.h | 3 ++-
include/linux/ax25.h | 2 +-
include/linux/caif/caif_socket.h | 7 +------
include/linux/can.h | 2 +-
include/linux/can/bcm.h | 1 +
include/linux/if.h | 12 ++++++------
include/linux/if_ppp.h | 1 +
include/linux/if_pppol2tp.h | 2 +-
include/linux/if_pppox.h | 9 +++++----
include/linux/in.h | 2 +-
include/linux/ipx.h | 2 +-
include/linux/irda.h | 9 +++------
include/linux/l2tp.h | 7 ++++---
include/linux/llc.h | 10 +++++++---
include/linux/netfilter/xt_connlimit.h | 1 +
include/linux/netfilter/xt_conntrack.h | 1 +
include/linux/netfilter/xt_iprange.h | 1 +
include/linux/netfilter_arp/arp_tables.h | 14 +++++++-------
include/linux/netfilter_decnet.h | 3 +++
include/linux/netfilter_ipv4.h | 3 +++
include/linux/netfilter_ipv4/ip_tables.h | 20 ++++++++++----------
include/linux/netfilter_ipv6.h | 3 +++
include/linux/netfilter_ipv6/ip6_tables.h | 22 +++++++++++-----------
include/linux/netlink.h | 2 +-
include/linux/netrom.h | 2 ++
include/linux/phonet.h | 6 ++++--
include/linux/rose.h | 7 +++++--
include/linux/scc.h | 1 +
include/linux/socket.h | 17 +++++++++--------
include/linux/tipc_config.h | 4 ++++
include/linux/un.h | 4 +++-
include/linux/x25.h | 3 ++-
32 files changed, 106 insertions(+), 77 deletions(-)
--
1.7.5.4
[-- Attachment #1.2: net-header-test.sh --]
[-- Type: application/x-shellscript, Size: 3390 bytes --]
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
next prev parent reply other threads:[~2011-08-08 13:15 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-05 21:45 include/linux/netlink.h: problem when included by an application Michel Machado
2011-08-07 1:15 ` Ben Hutchings
2011-08-07 22:14 ` Michel Machado
2011-08-08 5:48 ` David Miller
2011-08-08 13:15 ` Ben Hutchings [this message]
2011-08-08 13:16 ` [PATCH 01/12] headers, pppox: Add missing #include to <linux/if_pppox.h> Ben Hutchings
2011-08-08 13:17 ` [PATCH 02/12] headers, ax25: Add missing #include to <linux/netrom.h>, <linux/rose.h> Ben Hutchings
2011-08-08 14:07 ` Ralf Baechle
2011-08-08 13:17 ` [PATCH 03/12] headers, pppol2tp: Use __kernel_pid_t in <linux/pppol2tp.h> Ben Hutchings
2011-08-08 13:18 ` [PATCH 04/12] headers, net: Use __kernel_sa_family_t in more definitions shared with userland Ben Hutchings
2011-08-08 13:18 ` [PATCH 05/12] headers, net: Define struct __kernel_sockaddr, replacing struct sockaddr Ben Hutchings
2011-08-08 13:19 ` [PATCH 06/12] headers, netfilter: Use kernel type names __u8, __u16, __u32 Ben Hutchings
2011-08-08 13:19 ` [PATCH 07/12] headers, tipc: Add missing #include to <linux/tipc_config.h> for userland Ben Hutchings
2011-08-08 13:20 ` [PATCH 08/12] headers, netfilter: Add missing #include <limits.h> " Ben Hutchings
2011-08-08 13:20 ` [PATCH 09/12] headers, xtables: Add missing #include <linux/netfilter.h> Ben Hutchings
2011-08-09 15:29 ` Patrick McHardy
2011-08-08 13:20 ` [PATCH 10/12] headers, can: Add missing #include to <linux/can/bcm.h> Ben Hutchings
2011-08-08 15:15 ` Oliver Hartkopp
2011-08-08 13:24 ` [PATCH 11/12] headers, scc: Add missing #include to <linux/scc.h> Ben Hutchings
2011-08-08 18:20 ` Ben Hutchings
2011-08-09 7:14 ` walter harms
2011-08-08 13:25 ` [PATCH 12/12] headers, ppp: Add missing #include to <linux/if_ppp.h> Ben Hutchings
2011-08-09 7:27 ` David Miller
2011-08-09 12:40 ` Ben Hutchings
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=1312809302.2591.1139.camel@deadeye \
--to=ben@decadent.org.uk \
--cc=davem@davemloft.net \
--cc=netdev@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