On 05/12/2018 02:10 AM, Stephen Hemminger wrote:
On Fri, 11 May 2018 16:32:24 +0000
"De Lara Guarch, Pablo" <pablo.de.lara.gua...@intel.com> wrote:

-----Original Message-----
From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Andy Green
Sent: Friday, May 11, 2018 2:51 AM
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH 2/4] net/bnx2x: remove unmeetable comparison

/home/agreen/projects/dpdk/drivers/net/bnx2x/elink.c:
In function ‘elink_check_kr2_wa’:
/home/agreen/projects/dpdk/drivers/net/bnx2x/elink.c:12922:28:
error: bitwise comparison always evaluates to false [-Werror=tautological-
compare]
         ((next_page & 0xe0) == 0x2))));
---
  drivers/net/bnx2x/elink.c |    4 +---
  1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/net/bnx2x/elink.c b/drivers/net/bnx2x/elink.c index
99684a5f9..2aef2b6da 100644
--- a/drivers/net/bnx2x/elink.c
+++ b/drivers/net/bnx2x/elink.c
@@ -12919,9 +12919,7 @@ static void elink_check_kr2_wa(struct elink_params
*params,
         * but only KX is advertised, declare this link partner as non-KR2
         * device.
         */
-       not_kr2_device = (((base_page & 0x8000) == 0) ||
-                         (((base_page & 0x8000) &&
-                           ((next_page & 0xe0) == 0x2))));
+       not_kr2_device = !(base_page & 0x8000);

        /* In case KR2 is already disabled, check if we need to re-enable it */
        if (!(vars->link_attr_sync & LINK_ATTR_SYNC_KR2_ENABLE)) {

Looks like a good fix, but I wonder what's the actual intention of that 
conditional.
CC'ing the maintainers and Stephen Hemminger (the author of this code) to 
figure it out.

Apart from that, missing signed-off-by, fixes line and Cc stable:

Fixes: b5bf7719221d ("bnx2x: driver support routines")
Cc: sta...@dpdk.org


Actually, I didn't write this. It came from contractors.  Based of FreeBSD
driver so look there.

Googling around, the correct comparison is == 0x20, I updated the patch accordingly.

-Andy

Reply via email to