From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id D87D4A04B5 for ; Tue, 3 Dec 2019 19:28:10 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CBF9C1B994; Tue, 3 Dec 2019 19:28:10 +0100 (CET) Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [205.139.110.61]) by dpdk.org (Postfix) with ESMTP id 285F81BF70 for ; Tue, 3 Dec 2019 19:28:09 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1575397688; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=dFoAoxJsG1m94zG8QiZ68OLBp2hhugLqdZXi+VeCDsY=; b=MFRDOy0XQWDv6AhoQqIxFBunzL6EUT7R0sg/msaa4+m1M+Mau5u6bpPe5yY6Y+eenvMnGN jXan4iLiDy3IH4C0Hum+GzTCcLpjxWTiX7iKUKRDB4LyOUG2gn9M8TDMKfb+GQgfyzUvJP vzHu4reP4XtngfBt87RsK8E2uffCgYA= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-268-d5Z3uBBzPYOzn000b_s40w-1; Tue, 03 Dec 2019 13:28:04 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5CADA800D41; Tue, 3 Dec 2019 18:28:03 +0000 (UTC) Received: from rh.redhat.com (ovpn-117-10.ams2.redhat.com [10.36.117.10]) by smtp.corp.redhat.com (Postfix) with ESMTP id 826FB5C240; Tue, 3 Dec 2019 18:28:02 +0000 (UTC) From: Kevin Traynor To: Rahul Lakkireddy Cc: dpdk stable Date: Tue, 3 Dec 2019 18:26:28 +0000 Message-Id: <20191203182714.17297-19-ktraynor@redhat.com> In-Reply-To: <20191203182714.17297-1-ktraynor@redhat.com> References: <20191203182714.17297-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: d5Z3uBBzPYOzn000b_s40w-1 X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Subject: [dpdk-stable] patch 'net/cxgbe: avoid polling link status before device start' has been queued to LTS release 18.11.6 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 18.11.6 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 12/10/19. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasi= ng (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable-queue This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable-queue/commit/5ba12b7d0ce10864aa= 8e160d403882261ff62b29 Thanks. Kevin. --- >From 5ba12b7d0ce10864aa8e160d403882261ff62b29 Mon Sep 17 00:00:00 2001 From: Rahul Lakkireddy Date: Sat, 28 Sep 2019 02:00:06 +0530 Subject: [PATCH] net/cxgbe: avoid polling link status before device start [ upstream commit 10fb9e47f6ec0093397b62f2c74f221719f967f4 ] Link updates come in firmware event queue, which is only created when device starts. So, don't poll for link status if firmware event queue is not yet created. This fixes NULL dereference when accessing non existent firmware event queue. Fixes: 265af08e75ba ("net/cxgbe: add link up and down ops") Signed-off-by: Rahul Lakkireddy --- drivers/net/cxgbe/cxgbe_ethdev.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_eth= dev.c index 5839a7bef..07063fa7d 100644 --- a/drivers/net/cxgbe/cxgbe_ethdev.c +++ b/drivers/net/cxgbe/cxgbe_ethdev.c @@ -203,4 +203,7 @@ int cxgbe_dev_link_update(struct rte_eth_dev *eth_dev, =20 =09for (i =3D 0; i < CXGBE_LINK_STATUS_POLL_CNT; i++) { +=09=09if (!s->fw_evtq.desc) +=09=09=09break; + =09=09cxgbe_poll(&s->fw_evtq, NULL, budget, &work_done); =20 @@ -236,4 +239,7 @@ int cxgbe_dev_set_link_up(struct rte_eth_dev *dev) =09int ret; =20 +=09if (!s->fw_evtq.desc) +=09=09return -ENOMEM; + =09/* Flush all link events */ =09cxgbe_poll(&s->fw_evtq, NULL, budget, &work_done); @@ -262,4 +268,7 @@ int cxgbe_dev_set_link_down(struct rte_eth_dev *dev) =09int ret; =20 +=09if (!s->fw_evtq.desc) +=09=09return -ENOMEM; + =09/* Flush all link events */ =09cxgbe_poll(&s->fw_evtq, NULL, budget, &work_done); --=20 2.21.0 --- Diff of the applied patch vs upstream commit (please double-check if non-= empty: --- --- -=092019-12-03 17:29:52.931870396 +0000 +++ 0019-net-cxgbe-avoid-polling-link-status-before-device-st.patch=092019-= 12-03 17:29:51.720750578 +0000 @@ -1 +1 @@ -From 10fb9e47f6ec0093397b62f2c74f221719f967f4 Mon Sep 17 00:00:00 2001 +From 5ba12b7d0ce10864aa8e160d403882261ff62b29 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 10fb9e47f6ec0093397b62f2c74f221719f967f4 ] + @@ -14 +15,0 @@ -Cc: stable@dpdk.org @@ -22 +23 @@ -index 5d74f8ba3..5df8d746c 100644 +index 5839a7bef..07063fa7d 100644 @@ -25 +26 @@ -@@ -207,4 +207,7 @@ int cxgbe_dev_link_update(struct rte_eth_dev *eth_dev, +@@ -203,4 +203,7 @@ int cxgbe_dev_link_update(struct rte_eth_dev *eth_dev, @@ -33 +34 @@ -@@ -240,4 +243,7 @@ int cxgbe_dev_set_link_up(struct rte_eth_dev *dev) +@@ -236,4 +239,7 @@ int cxgbe_dev_set_link_up(struct rte_eth_dev *dev) @@ -41 +42 @@ -@@ -266,4 +272,7 @@ int cxgbe_dev_set_link_down(struct rte_eth_dev *dev) +@@ -262,4 +268,7 @@ int cxgbe_dev_set_link_down(struct rte_eth_dev *dev)