From mboxrd@z Thu Jan 1 00:00:00 1970 From: Panu Matilainen Subject: Re: [PATCH] ixgbe: fix build with gcc 5 Date: Thu, 19 Feb 2015 14:37:08 +0200 Message-ID: <54E5D8F4.9000305@redhat.com> References: <2601191342CEEE43887BDE71AB977258213F0CA8@irsmsx105.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit To: "Ananyev, Konstantin" , "dev-VfR2kkLFssw@public.gmane.org" Return-path: In-Reply-To: <2601191342CEEE43887BDE71AB977258213F0CA8-pww93C2UFcwu0RiL9chJVbfspsVTdybXVpNB7YpNyf8@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" On 02/19/2015 02:02 PM, Ananyev, Konstantin wrote: > Hi Panu, > >> -----Original Message----- >> From: dev [mailto:dev-bounces-VfR2kkLFssw@public.gmane.org] On Behalf Of Panu Matilainen >> Sent: Thursday, February 19, 2015 10:25 AM >> To: dev-VfR2kkLFssw@public.gmane.org >> Subject: [dpdk-dev] [PATCH] ixgbe: fix build with gcc 5 >> >> Add extra parenthesis to remove ambiguity on what we want to compare, >> otherwise gcc 5 issues a "logical not is only applied to the left hand >> side of comparison" warning which with -Werror fails the build. >> >> Signed-off-by: Panu Matilainen >> --- >> lib/librte_pmd_ixgbe/ixgbe/ixgbe_common.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/lib/librte_pmd_ixgbe/ixgbe/ixgbe_common.c b/lib/librte_pmd_ixgbe/ixgbe/ixgbe_common.c >> index 37e5bae..93a6a00 100644 >> --- a/lib/librte_pmd_ixgbe/ixgbe/ixgbe_common.c >> +++ b/lib/librte_pmd_ixgbe/ixgbe/ixgbe_common.c >> @@ -2898,8 +2898,8 @@ STATIC s32 ixgbe_fc_autoneg_fiber(struct ixgbe_hw *hw) >> */ >> >> linkstat = IXGBE_READ_REG(hw, IXGBE_PCS1GLSTA); >> - if ((!!(linkstat & IXGBE_PCS1GLSTA_AN_COMPLETE) == 0) || >> - (!!(linkstat & IXGBE_PCS1GLSTA_AN_TIMED_OUT) == 1)) { >> + if (((!!(linkstat & IXGBE_PCS1GLSTA_AN_COMPLETE)) == 0) || >> + ((!!(linkstat & IXGBE_PCS1GLSTA_AN_TIMED_OUT)) == 1)) { >> ERROR_REPORT1(IXGBE_ERROR_POLLING, >> "Auto-Negotiation did not complete or timed out"); >> goto out; > > Unfortunately we are not supposed to change files under ixgbe subfirectory (except ixgbe_osdep.*). Oh, sorry about that, I didn't realize there were untouchable files in the repo. Its not a very common setup :) > Usually we deal with it just by: > If GCC_VERSION... > CFLAGS_ixgbe_common.o += -Wno... > > You can have a look at lib/librte_pmd_ixgbe/Makefile, there are plenty of such things. Yup, noticed that but assumed the warning disablers were mainly for things that are not trivial to fix. This one can be worked around just as easily with -Wlogical-not-parentheses, but since this flag is new to gcc 5 it can't really be added until gcc 5 is recognized as a supported version by the makefiles: http://dpdk.org/dev/patchwork/patch/3452/ I'll send an updated version using warning disabler once other gcc-5 support goes in. - Panu -