[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1263478005.17815.19.camel@localhost>
Date:	Thu, 14 Jan 2010 14:06:45 +0000
From:	Ben Hutchings <ben@...adent.org.uk>
To:	Rob Landley <rob@...dley.net>
Cc:	kernel list <linux-kernel@...r.kernel.org>,
	David Miller <davem@...emloft.net>
Subject: Re: git 9c501935a3cd broke the strace build.
On Thu, 2010-01-14 at 04:57 -0600, Rob Landley wrote:
> >    net: Support inclusion of <linux/socket.h> before <sys/socket.h>
> >   
> >    The following user-space program fails to compile:
> >    
> >        #include <linux/socket.h>
> >        #include <sys/socket.h>
> 
> Did it ever?  Isn't #including both sys/thingy and a linux/thingy in the same 
> program considered bad form?
I don't see why.
Even if a source file doesn't include both of them directly, they may
both be included indirectly.
[...]
> Now under 2.6.32 it dies with:
> 
>   linux/netlink.h:35: error: expected specifier-qualifier-list before
>   'sa_family_t'
I did actually ask for this to be reverted when I saw that it causes
breakage elsewhere, but David Miller insisted that my change was
correct.
> And later on the strace build breaks because it doesn't #include 
> linux/netlink.h when it needs to.  (Why yes, autoconf _is_ brittle and near-
> useless, thanks for noticing.)
> 
> *shrug*  I can patch the strace ./configure to include bits/socket.h instead of 
> linux/socket.h,
Including libc headers under 'bits' is a bad idea.
> but what I can't understand is why _you_ couldn't.  (What use 
> case did this patch actually fix?  Would reversing the order of those two 
> headers have helped?)
I think that reversing the order of the two headers should work for
kernel headers before and after this change.
Ben.
-- 
Ben Hutchings
The generation of random numbers is too important to be left to chance.
                                                            - Robert Coveyou
Download attachment "signature.asc" of type "application/pgp-signature" (829 bytes)
Powered by blists - more mailing lists