All of lore.kernel.org
 help / color / mirror / Atom feed
From: Phil Sutter <phil@nwl.cc>
To: Daniel Borkmann <daniel@iogearbox.net>,
	Stephen Hemminger <shemming@brocade.com>,
	David Ahern <dsa@cumulusnetworks.com>
Cc: netdev@vger.kernel.org,
	Nicolas Dichtel <nicolas.dichtel@6wind.com>,
	"julien.floret@6wind.com" <julien.floret@6wind.com>
Subject: Re: [iproute PATCH 1/3] Use C99 style initializers everywhere
Date: Sat, 18 Jun 2016 02:02:21 +0200	[thread overview]
Message-ID: <20160618000221.GA10428@orbyte.nwl.cc> (raw)
In-Reply-To: <41801a15-fd99-6916-211c-705b4445023d@cumulusnetworks.com> <20160617115753.6205562d@xeon-e3> <576420B0.3050203@iogearbox.net>

Hi,

[Replying to multiple mails at once due to laziness.]

On Fri, Jun 17, 2016 at 06:09:20PM +0200, Daniel Borkmann wrote:
> Hmm, seems like a lot of stuff ...

It is. At some point I thought about maybe hack something in cocci
instead, but that would probably have taken longer given the code
diversity. :/

I know this is crap to review, but splitting it up into a 100 patches
doesn't make much sense, either.

> Please have a look at commit 8f80d450c3cb ("tc: fix compilation with old gcc (< 4.6)") ...
> 
> Your changes effectively revert them again. Here, and some other parts of the bpf frontend
> code bits.

Oh, good catch! Thanks a lot for pointing this out. It definitely needs
to be sorted prior to applying my mess.


On Fri, Jun 17, 2016 at 11:57:53AM -0700, Stephen Hemminger wrote:
> It makes sense that if you can build a kernel with old toolchain, that
> iproute2 needs to be buildable as well.
> 
> The current kernels are documented to require 3.2 or later.

So in your opinion we should stay compatible to gcc-3.2? Clarifying
requirements like this one would make sense in order to know what to
check against.


On Fri, Jun 17, 2016 at 02:47:51PM -0600, David Ahern wrote:
> On 6/17/16 2:36 PM, Daniel Borkmann wrote:
[...]
> > I just pointed to the fact that this would basically undo their changes
> > that they've submitted some time ago to the BPF frontend, reintroducing
> > the issue for them. Unfortunately, the anonymous struct cannot be named
> > due to uapi reasons. It should have been named from the very beginning,
> > but unfortunately too late now. So I would suggest to just leave those
> > affected parts as is.
> 
> I was referring to Phil's patch. All of the struct {} req; 
> initializations should be fine if you name the structs, but then need to 
> run it through whatever compiler version the 6wind folks care about to 
> verify that is true.

I'm not so sure about that. What I did regarding the anonymous struct
req is not new in iproute2 code base: There is the GENL_REQUEST macro
which expands to an identical construct and it's there since end of
2012.

Commit 8f80d450c3cb changes only the initializers of union bpf_attr, so
maybe the problem is limited to anonymous structs in unions? Anyway, I
guess defining which minimum gcc version to depend on and testing
against it is the only real solution here.

Thanks, Phil

  reply	other threads:[~2016-06-18  0:02 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-17 15:56 [iproute PATCH 0/3] Big C99 style initializer rework Phil Sutter
2016-06-17 15:56 ` [iproute PATCH 1/3] Use C99 style initializers everywhere Phil Sutter
2016-06-17 16:09   ` Daniel Borkmann
2016-06-18  0:02     ` Phil Sutter [this message]
2016-06-18  0:21       ` Stephen Hemminger
2016-06-20  3:39         ` David Ahern
     [not found]   ` <ddef688e6e3f4a1a895880de1f9f069d@HQ1WP-EXMB11.corp.brocade.com>
2016-06-17 16:34     ` Stephen Hemminger
2016-06-17 16:46       ` Daniel Borkmann
2016-06-17 16:58         ` Nicolas Dichtel
     [not found]         ` <9e1c05c7b4894137a80bdb3d2a361bbc@HQ1WP-EXMB11.corp.brocade.com>
2016-06-17 18:57           ` Stephen Hemminger
2016-06-17 20:15             ` David Ahern
2016-06-17 20:36               ` Daniel Borkmann
2016-06-17 20:47                 ` David Ahern
2016-06-17 15:56 ` [iproute PATCH 2/3] Replace malloc && memset by calloc Phil Sutter
2016-06-17 15:56 ` [iproute PATCH 3/3] No need to initialize rtattr fields before parsing Phil Sutter

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=20160618000221.GA10428@orbyte.nwl.cc \
    --to=phil@nwl.cc \
    --cc=daniel@iogearbox.net \
    --cc=dsa@cumulusnetworks.com \
    --cc=julien.floret@6wind.com \
    --cc=netdev@vger.kernel.org \
    --cc=nicolas.dichtel@6wind.com \
    --cc=shemming@brocade.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.