From patchwork Thu Jun 7 16:30:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Mody, Rasesh" X-Patchwork-Id: 40778 X-Patchwork-Delegate: ferruh.yigit@amd.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 61DEB1B405; Thu, 7 Jun 2018 18:31:16 +0200 (CEST) Received: from NAM02-CY1-obe.outbound.protection.outlook.com (mail-cys01nam02on0082.outbound.protection.outlook.com [104.47.37.82]) by dpdk.org (Postfix) with ESMTP id F38271B3F2; Thu, 7 Jun 2018 18:31:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tBfm4yiPoBk0DsGpYj+sqW1kSTq068eBTaGZXyykBsg=; b=gZX3/VTlhTOtWWu3f4aT4+6jWmay3nT/DMKHtLhyoEdfOigWtQO1rtHhqiHYcvJUASVtTVelImZJf93U+Z5SNdogKUsVULiBSPpgmF1yxvseEDAmdRVl7ghPSii3b4r6DT76UH0cuOfg3sPfxxCzs+ShAeo24DHTYVlcAyb3/p4= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Rasesh.Mody@cavium.com; Received: from cavium.com (198.186.0.2) by BL0PR07MB4018.namprd07.prod.outlook.com (2603:10b6:207:4b::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.841.14; Thu, 7 Jun 2018 16:31:11 +0000 From: Rasesh Mody To: dev@dpdk.org Cc: Shahed Shaikh , ferruh.yigit@intel.com, Dept-EngDPDKDev@cavium.com, stable@dpdk.org Date: Thu, 7 Jun 2018 09:30:51 -0700 Message-Id: <1528389052-4875-1-git-send-email-rasesh.mody@cavium.com> X-Mailer: git-send-email 1.7.10.3 MIME-Version: 1.0 X-Originating-IP: [198.186.0.2] X-ClientProxiedBy: BYAPR07CA0011.namprd07.prod.outlook.com (2603:10b6:a02:bc::24) To BL0PR07MB4018.namprd07.prod.outlook.com (2603:10b6:207:4b::20) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:BL0PR07MB4018; X-Microsoft-Exchange-Diagnostics: 1; BL0PR07MB4018; 3:iJ9G9q/tOBrH056XUg3d2U+dHjqZEFmLeFv7l2H9czysmyI86TxAHMPShp7iNy0sZo/WUrTWn0F/PzUs/C8JrK6ojgrxR3vTx0XpC6lBrmZKSBIFduioz/8bqyjmVGNANjyz+Dq+/SG9cGM7vTdm6yETdjKxb2vkWLncWuBgxYWNwnUr/J3eAx1Yrm8maZ5oF5MEOq4DjoJCiT89NNFtQRwpWdwRiXRxg+GRcRtyY96NE5ypX6r/yloD/exvAD85; 25:fazXHe6+cxQwLm/fj0HJDNwiWoMkDrLU5cJdGxQi2Hxs8bMgXP1CHOJplBOyR/AFsWaxqfWzenwAN2wLQIgamfrK9VcjGPTz/xk/6BIvu9InCI9Gyk0OplGIs6J7On6EBnEybkjsbqkdr7jY9wasNyHJPRUd1YufYpf/wmTI9okUQLycGFOuFwknmWV5slJdBaWhLAbU+2eEDPZ0hM5epNQytQ3P3qaiEmj+l3FeYqtQ5UdAMYV36AhB3a69N01dMvrc0hR/6d374XVZLBKRZ9rsw+IDd708dU/Y16Bgcz4AJx17/r+e6PAMTcg/XL4jFPNWNzMvgyVY6kRljoXvNw==; 31:rjZyiPlfncbo09sHELvEK1CfPXb4cHkAs9wlqmistXWZ9XYPda+laO7xzuuaiRfhIAuyMvvztBNbTKAernh6zFYQqiI3f1stq/oqsghPM5NGFmA57EsAoT+vtQ1g8sfureInsVdXz1dULqXIcngGqMDrqgdNL0H7ArKhloEcfQqVfHyok10yvKwvhbc3S0+0KA+hKo9GIX7kxjdckMZ/0P2gRxO8u7ohRZjUehlJ/Fc= X-MS-TrafficTypeDiagnostic: BL0PR07MB4018: X-Microsoft-Exchange-Diagnostics: 1; BL0PR07MB4018; 20:V9vZ+LQeTwIBGQLGQid/YPRjw31znb+mqi57jL991O4FwgkUQPXbk508CzqnDCB3yJF2du7gioSEnTI+4ocfwefegUZkb01teEt4PR0Lw5scNTSMS6IyYZauIGE/cyV4HpXab/dDwxnG+X5BWhLet9Ve1Fb5y9mNeBfOY/U5AEJZ4Me++1n+kwN9Ykbp1d7VNB07DV3V7H1JRqwIRcDjPJwEPSYK1dBGb7HVsF/zEqAajLJ0B2KNrFUQQTZenx+Ikk6smJ7ITtJ8jdKHF2Gf0wKfpFD8H35r6YR5pmzxNvn7c4gfpqgUbHm/QzV6xkWEYN1T1lwQyEl4jbmb3xMSS7bM0Zk7fQ89Audk+d/ANwOTzm0yROm4SQnu53rd3nU/GbWb9tX4tbhvMqlf06ogfK82NDQEoCzOVW8S4OQHC6WG5gOUkYTxZgFedrRBLCzQAwlggl/7qVVbsgxRcqckQjjIoutNdTeTR9UiJq94ZqWla4eA1RCx+Jjylbas8p9l; 4:9csAla1piCwkxU0cyLz00bNb0coMrVjbwBXv/eGyFgaG0y/49sNODi9XT55OGNG7tQdi9j8+hpr/4txtIZcsZpOCQkw3Yln7AfK+XBVRzgbEMJU6ap1JbgB4YXOW99G61NNkWCQQcM6jqbDcoP7IYpCRDDT1ODUrzleQ2OmfCIY0azKPQ9uJ44W2SLEbommQ/v705ogLeT7AnTfA5+x45/Ht2oX+628aMShsPaJcT9SXq1cv2iCp4jpBxAbrUPdn7agx8ECltJP3c46xzrPe8Q== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(3231254)(944501410)(52105095)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011)(7699016); SRVR:BL0PR07MB4018; BCL:0; PCL:0; RULEID:; SRVR:BL0PR07MB4018; X-Forefront-PRVS: 06968FD8C4 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(346002)(366004)(39380400002)(39860400002)(199004)(189003)(478600001)(8936002)(72206003)(5660300001)(51416003)(97736004)(7696005)(52116002)(8676002)(16526019)(36756003)(386003)(59450400001)(68736007)(7736002)(6916009)(6666003)(69596002)(106356001)(66066001)(105586002)(305945005)(47776003)(50466002)(2351001)(25786009)(48376002)(81166006)(81156014)(956004)(2616005)(476003)(16586007)(4326008)(4720700003)(2361001)(86362001)(26005)(6116002)(3846002)(50226002)(55016002)(486006)(316002)(44832011)(2906002)(186003)(53936002)(21086003); DIR:OUT; SFP:1101; SCL:1; SRVR:BL0PR07MB4018; H:cavium.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BL0PR07MB4018; 23:ImyM60P/zi0hoRdq3IdiIKlMfgc3KibzPkKE8lkkY?= k/+aOja7a3dmU1iVJqM7VNIVSzUte5GYM8+h7KKItci3MDg22UE+2Otp56q3x0D5NsFGirjU8YmdPQ/9fEKxxrxs6xysRKAwgh/px/8XyoLc/cq2OwAKMSM7jnvDg7y51Qw0PItzVC0vVf/OFsNSsNh0RABWbXwun3Bv4OBo3ePsWfiejNINJIufERLUZwGNi9d4uiUgIB07sTatXih864Wyu+kKCZgyxuBu9HyWB9FAg8UO/M79YwYskA8xgbv1SoLEOICQmb59saXLWg8/65jknu9F+c8E/NSiJ+yuv1Ow29H4uLQ9blRZryOTs7xsacU4yqcbj/h0COjMVbaYjkG5Q8PVqCjYWrMwz/Mu6LaMETO26bazZMJjEj2bVWFtn8lNAp/V0YMuWiKFleIr/9lApXhPo/qOMA8rPRo4Zj5x7GHP5w25Hdcrmt6Yc6yDD/oQtvwJAcF53Z+p6Jixlm9mOGRzB3a/9G/lB+MhmvH8J11vcs428t0+ScKisSxJQVS5EcWQz2o+vRAzbYzwhDc+rBCiMp2xa8GhiFugTVTrPDsFvVTPRs2IHFu070rdAw0uckOn24wnNsukX3TpYTQMjEza8v7OtA3/Z6ZxT56yAJku8ilnydfDMFfaCgbo/cCHPsPfMxkjKs5r2y7x7CprN2z8lhNLN2GXLYNxHYoe2dTyob/7DJveEyDeED9fnjRWRsyZ4ckq4jaQ+vj1nD+yHpPrBpvTy381X/1K5bxwauNiTxMpKAOioJqUSkBB+dqMptbYR/G6IUlStMqTymZLg0FhDy/yYc38kOW9De1clqsVix7XbsdkqDUIN7IVazxn0XLOwYS1mTxjRueWHOspiI94/adJUZF98gPK/UdYrZjNnC67ul0b3DDe/MStJiJwBAwLMn7vunh/L2pG5z1ZJnj0xUTVvJmA1zTxU7dsOhie3IBmWVM5XX+XEXnzY0TBKA/eGxTCFL73msJ+IX9b71MBetpQOaa6hLKGP+rEexVcBNYMbKd8dbFSLFFgq4uVldCOailh8UpXFcGvYxZ35htLgRKGBH3RNyZCJSxxab+mfn1KK79uZn0yLGwqEA6EHzgdyAvRzi4cTfy1BSRHVg4hznas9+fpMxM9952yEMYNhsfxSU7v4P5FA29PT2S+3heKw4LhGxgqzy4DHf+aglVF1tuKFrpBcWGVuUgdsGEvXDy9FHOq9OBo/2RiLizapVhSLWBKFVFmX2RgO78b3RNhqJjBVo+jquRBu9qXw== X-Microsoft-Antispam-Message-Info: WogCTrvrTQjzZMFLCzlbBgceZUuafRf0LrGqlMJZ8dHkXJhPjGw91nQ8hCbxxDkh63EGCC/Cw5nJlarGhU/0Ssf0mfhKhEiGlGfk6GBgdRet9+HRTJYTX4DjvX/cKZ6gIw0L2rILkfH1A+NFPjfdhkk9zHiYbPjQgHbrTBcQXlU4lfJMK/9Zhy2eVIB/tvmp X-Microsoft-Exchange-Diagnostics: 1; BL0PR07MB4018; 6:MJ58xDzGwFOBnD56bOS1v+JCl+xQMIF/SEMp0n3aPNqWjYjJAnDnDzttqYew9uH1fX/9laSCiHQ+Q0+7P/+yKBBsAH8DjtBogmJuhmYSZR+jY5m2JyfNViHPnmGzLdKXV1nkNpByJ8spUPVKB8Nch7HzEpYykv9DB2NG/9iA+UEWJ6Ba6ww6UVNBqslJB93PHstQujfjwAByXiD3cpr0cakn1dRM1zbcB1O/Ey19WwEx/OSBltubPC4rw7kpyRYqVL8u0JOgw0zCwaEXmWEdXMGEAbPEGaNLyfb3Na3pIYHQUfMWQ4h1TuTDeC775B8PHaXGH42NdiQ6xXisXOc1T7QtxjYytTPldUfkYJi34wc8ZyiJj5+w+LIsgS9ecjoMDkQw8y5AX+eOxKuFcZmmGzRPLME7tKdja9ZWLCDd/PT4X9Nd47RXw9CSuBh8loYMiAyDuhcKn1gL/qtQyFLQRw==; 5:eBegJZU9+YyYTCXD8rofaiejwOXNTQJeKRXJuXj58Z7BHcVfpyhuS5rYwTCZaILxWo36C0B6J8nEP3zDSwa/i0w+QraD3IJK26Muw70ofSdrrYNJ2cXnfrmWZK3XEtt3XzWT/IqM959vErSh+Ndi3N/Be3HLuvKp1TBnOnSaze8=; 24:q82BcV+ngJV3S3UkfARS+8hvg2VBO9eHLyjXvCrY3DLUguupmOHiOhhpta2m7bezmdgffaGrCbv9xVFhaTBRfPmWUtlnONQSNxJ95KfLprk= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BL0PR07MB4018; 7:Bo3W9UZDHi6O0otxCmp+Mgi9LPyqht1KBDQCHgcSqXEsWx2h4yacFPgL7SYcuP2a1T1OudJWnwDVv7fRi3YC2VjGZ6NKmkMdNojENbaD5o6nNSyjMViCAC9LY5IUBxXtydIu68e57zWfLADilH/G6FkJyOqDZddKJQSZPrbwM36cwvgsTH/SsjXAmAmpEY5VIx41UizDmwLAG9UqbRru29SwZNd5p7C1WlQCBAmj3zaqwDT9SBa/dpuAeDmDX53B X-MS-Office365-Filtering-Correlation-Id: 9220ab75-941a-4d9b-7bf4-08d5cc9414b4 X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Jun 2018 16:31:11.0887 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9220ab75-941a-4d9b-7bf4-08d5cc9414b4 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR07MB4018 Subject: [dpdk-dev] [PATCH 1/2] net/qede: fix incorrect link status update X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Shahed Shaikh qede_link_update() always returns -1 i.e. link not changed, becasue it compares the variables which always hold same value. Fix this function by using rte_eth_linkstatus_set(). Fixes: 2ea6f76aff40 ("qede: add core driver") Cc: stable@dpdk.org Signed-off-by: Shahed Shaikh --- drivers/net/qede/qede_ethdev.c | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c index cd9ec10..7a63d05 100644 --- a/drivers/net/qede/qede_ethdev.c +++ b/drivers/net/qede/qede_ethdev.c @@ -1590,18 +1590,20 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) { struct qede_dev *qdev = eth_dev->data->dev_private; struct ecore_dev *edev = &qdev->edev; + struct qed_link_output q_link; + struct rte_eth_link link; uint16_t link_duplex; - struct qed_link_output link; - struct rte_eth_link *curr = ð_dev->data->dev_link; - memset(&link, 0, sizeof(struct qed_link_output)); - qdev->ops->common->get_link(edev, &link); + memset(&q_link, 0, sizeof(q_link)); + memset(&link, 0, sizeof(link)); + + qdev->ops->common->get_link(edev, &q_link); /* Link Speed */ - curr->link_speed = link.speed; + link.link_speed = q_link.speed; /* Link Mode */ - switch (link.duplex) { + switch (q_link.duplex) { case QEDE_DUPLEX_HALF: link_duplex = ETH_LINK_HALF_DUPLEX; break; @@ -1612,21 +1614,20 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) default: link_duplex = -1; } - curr->link_duplex = link_duplex; + link.link_duplex = link_duplex; /* Link Status */ - curr->link_status = (link.link_up) ? ETH_LINK_UP : ETH_LINK_DOWN; + link.link_status = q_link.link_up ? ETH_LINK_UP : ETH_LINK_DOWN; /* AN */ - curr->link_autoneg = (link.supported_caps & QEDE_SUPPORTED_AUTONEG) ? + link.link_autoneg = (q_link.supported_caps & QEDE_SUPPORTED_AUTONEG) ? ETH_LINK_AUTONEG : ETH_LINK_FIXED; DP_INFO(edev, "Link - Speed %u Mode %u AN %u Status %u\n", - curr->link_speed, curr->link_duplex, - curr->link_autoneg, curr->link_status); + link.link_speed, link.link_duplex, + link.link_autoneg, link.link_status); - /* return 0 means link status changed, -1 means not changed */ - return ((curr->link_status == link.link_up) ? -1 : 0); + return rte_eth_linkstatus_set(eth_dev, &link); } static void qede_promiscuous_enable(struct rte_eth_dev *eth_dev)