[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190506143559.31e7c968@cakuba.hsd1.ca.comcast.net>
Date: Mon, 6 May 2019 14:35:59 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: Oleksandr Natalenko <oleksandr@...alenko.name>
Cc: "David S. Miller" <davem@...emloft.net>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Martin KaFai Lau <kafai@...com>,
Song Liu <songliubraving@...com>, Yonghong Song <yhs@...com>,
Jesper Dangaard Brouer <hawk@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
netdev@...r.kernel.org, bpf@...r.kernel.org,
oss-drivers@...ronome.com, linux-kernel@...r.kernel.org,
xdp-newbies@...r.kernel.org, valdis@...edu
Subject: Re: netronome/nfp/bpf/jit.c cannot be build with -O3
On Mon, 06 May 2019 23:24:39 +0200, Oleksandr Natalenko wrote:
> Hi.
>
> On 06.05.2019 23:00, Jakub Kicinski wrote:
> > Any chance you could try different compiler versions? The code in
> > question does not look too unusual. Could you try if removing
> > FIELD_FIT() on line 326 makes a difference?
>
> If building with gcc from CentOS 7:
>
> gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
>
> the issue is not reproducible.
I just did a make CC=gcc-8 CFLAGS=-O3 with GCC 8.2 here, and doesn't
seem to trigger either.
> Also, commenting out the whole "if" block with FIELD_FIT() prevents the
> issue from occurring too.
Hm, could it be that GCC 8.3 has some constant propagation bug which
breaks BUILD_BUG_ON()? My uneducated guess it tries to pull the mask
validation out of FIELD_FIT() and FIELD_PREP() into one place but in
doing so loses some information.
Powered by blists - more mailing lists