Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1397416

Re: [PATCH v2] uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h

From Pablo Neira Ayuso <pablo@netfilter.org>
Newsgroups linux.kernel
Subject Re: [PATCH v2] uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h
Date 2016-05-09 23:40 +0200
Message-ID <rx14e-5rm-7@gated-at.bofh.it> (permalink)
References <rrush-6Vr-9@gated-at.bofh.it> <rwTT4-6II-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, May 09, 2016 at 09:59:22AM -0400, Josh Boyer wrote:
> On Sun, Apr 24, 2016 at 11:45 AM, Mikko Rapeli <mikko.rapeli@iki.fi> wrote:
> > glibc's net/if.h contains copies of definitions from linux/if.h and these
> > conflict and cause build failures if both files are included by application
> > source code. Changes in uapi headers, which fixed header file dependencies to
> > include linux/if.h when it was needed, e.g. commit 1ffad83d, made the
> > net/if.h and linux/if.h incompatibilities visible as build failures for
> > userspace applications like iproute2 and xtables-addons.
> >
> > This patch fixes compile errors when glibc net/if.h is included before
> > linux/if.h:
> >
> > ./linux/if.h:99:21: error: redeclaration of enumerator ‘IFF_NOARP’
[...]
> >
> > The cases where linux/if.h is included before net/if.h need a similar fix in
> > the glibc side, or the order of include files can be changed userspace
> > code as a workaround.
> >
> > This change was tested in x86 userspace on Debian unstable with
> > scripts/headers_compile_test.sh:
> >
> > $ make headers_install && \
> >   cd usr/include && ../../scripts/headers_compile_test.sh -l -k
> > ...
> > cc -Wall -c -nostdinc -I /usr/lib/gcc/i586-linux-gnu/5/include -I /usr/lib/gcc/i586-linux-gnu/5/include-fixed -I . -I /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.2uX2zH -I /home/mcfrisk/src/linux-2.6/usr/headers_compile_test_include.2uX2zH/i586-linux-gnu -o /dev/null ./linux/if.h_libc_before_kernel.h
> > PASSED libc before kernel test: ./linux/if.h
> >
> > Reported-by: Jan Engelhardt <jengelh@inai.de>
> > Reported-by: Josh Boyer <jwboyer@fedoraproject.org>
> > Reported-by: Stephen Hemminger <shemming@brocade.com>
> > Reported-by: Waldemar Brodkorb <mail@waldemar-brodkorb.de>
> > Cc: Gabriel Laskar <gabriel@lse.epita.fr>
> > Signed-off-by: Mikko Rapeli <mikko.rapeli@iki.fi>
> 
> Bump.  Did this get lost in a queue somewhere?

It seems linux-netdev was not Cc'ed. I cannot find this in David's
patchwork [1].

@Mikko: Could you resubmit including netdev@vger.kernel.org? Thanks.

[1] http://patchwork.ozlabs.org/project/netdev/list/.

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH v2] uapi glibc compat: fix compile errors when glibc  net/if.h included before linux/if.h Josh Boyer <jwboyer@fedoraproject.org> - 2016-05-09 16:00 +0200
  Re: [PATCH v2] uapi glibc compat: fix compile errors when glibc  net/if.h included before linux/if.h Pablo Neira Ayuso <pablo@netfilter.org> - 2016-05-09 23:40 +0200
    Re: [PATCH v2] uapi glibc compat: fix compile errors when glibc  net/if.h included before linux/if.h Mikko Rapeli <mikko.rapeli@iki.fi> - 2016-05-10 00:20 +0200

csiph-web