[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1475069348.28155.98.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Wed, 28 Sep 2016 06:29:08 -0700
From: Eric Dumazet <eric.dumazet@...il.com>
To: Cyrill Gorcunov <gorcunov@...il.com>
Cc: Jamal Hadi Salim <jhs@...atatu.com>,
David Ahern <dsa@...ulusnetworks.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, David Miller <davem@...emloft.net>,
kuznet@....inr.ac.ru, jmorris@...ei.org, yoshfuji@...ux-ipv6.org,
kaber@...sh.net, avagin@...nvz.org, stephen@...workplumber.org
Subject: Re: [PATCH v5] net: ip, diag -- Add diag interface for raw sockets
On Wed, 2016-09-28 at 16:03 +0300, Cyrill Gorcunov wrote:
> On Wed, Sep 28, 2016 at 05:57:12AM -0700, Eric Dumazet wrote:
> ...
> > Note that some programs could fail to compile with the added union
> > anyway.
> >
> > Some gcc versions are unable to compile a static init with an union
> >
> > struct inet_diag_req_v2 foo = { .pad = 0, sdiag_family = AF_INET, };
> >
> > When I cooked my recent fq commit I simply removed a pad and replaced
> > it :
> >
> > git show fefa569a9d4bc4 -- include
>
> Oh, crap :( I've been looking into uapi headers, found that we
> use anonymous unions (for example include/uapi/linux/bcache.h)
> and thought it will be safe (and my test builds didn't fail).
> Are you happen to know which gcc versions cant do that?
The most recent example I have in mind is a kbuild bot report on the
recent TCP BBR patches. We had to rework the patch to avoid the problem.
If I remember well, this was a gcc-4.7, but not on x86.
Powered by blists - more mailing lists