From: Sai Krishna <saikrishnag@marvell.com>
To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>,
<pabeni@redhat.com>, <netdev@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <simon.horman@corigine.com>,
<leon@kernel.org>, <sgoutham@marvell.com>, <gakula@marvell.com>,
<lcherian@marvell.com>, <jerinj@marvell.com>,
<hkelam@marvell.com>, <sbhatta@marvell.com>
Cc: Sai Krishna <saikrishnag@marvell.com>
Subject: [net PATCH v4 10/10] octeontx2-pf: Disable packet I/O for graceful exit
Date: Wed, 26 Apr 2023 13:13:45 +0530 [thread overview]
Message-ID: <20230426074345.750135-11-saikrishnag@marvell.com> (raw)
In-Reply-To: <20230426074345.750135-1-saikrishnag@marvell.com>
From: Subbaraya Sundeep <sbhatta@marvell.com>
At the stage of enabling packet I/O in otx2_open, If mailbox
timeout occurs then interface ends up in down state where as
hardware packet I/O is enabled. Hence disable packet I/O also
before bailing out.
As per earlier implementation, when the VF device probe fails due
to error in MSIX vector allocation, the LF resources, NIX and NPA
LF were not detached. This patch fixes in releasing these
resources, when ever this MSIX vector allocation/VF probe fails.
Fixes: 1ea0166da050 ("octeontx2-pf: Fix the device state on error")
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Signed-off-by: Sunil Kovvuri Goutham <sgoutham@marvell.com>
Signed-off-by: Sai Krishna <saikrishnag@marvell.com>
---
drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 11 ++++++++++-
drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c | 2 +-
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c
index 179433d0a54a..52a57d2493dc 100644
--- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c
+++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c
@@ -1835,13 +1835,22 @@ int otx2_open(struct net_device *netdev)
otx2_dmacflt_reinstall_flows(pf);
err = otx2_rxtx_enable(pf, true);
- if (err)
+ /* If a mbox communication error happens at this point then interface
+ * will end up in a state such that it is in down state but hardware
+ * mcam entries are enabled to receive the packets. Hence disable the
+ * packet I/O.
+ */
+ if (err == EIO)
+ goto err_disable_rxtx;
+ else if (err)
goto err_tx_stop_queues;
otx2_do_set_rx_mode(pf);
return 0;
+err_disable_rxtx:
+ otx2_rxtx_enable(pf, false);
err_tx_stop_queues:
netif_tx_stop_all_queues(netdev);
netif_carrier_off(netdev);
diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c
index ab126f8706c7..53366dbfbf27 100644
--- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c
+++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c
@@ -621,7 +621,7 @@ static int otx2vf_probe(struct pci_dev *pdev, const struct pci_device_id *id)
err = otx2vf_realloc_msix_vectors(vf);
if (err)
- goto err_mbox_destroy;
+ goto err_detach_rsrc;
err = otx2_set_real_num_queues(netdev, qcount, qcount);
if (err)
--
2.25.1
next prev parent reply other threads:[~2023-04-26 7:46 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-26 7:43 [net PATCH v4 00/10] octeontx2: Miscellaneous fixes Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 01/10] octeontx2-af: Secure APR table update with the lock Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 02/10] octeontx2-af: Fix start and end bit for scan config Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 03/10] octeontx2-af: Fix depth of cam and mem table Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 04/10] octeontx2-pf: Increase the size of dmac filter flows Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 05/10] octeontx2-af: Add validation for lmac type Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 06/10] octeontx2-af: Update correct mask to filter IPv4 fragments Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 07/10] octeontx2-af: Update/Fix NPC field hash extract feature Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 08/10] octeontx2-af: Fix issues with NPC field hash extract Sai Krishna
2023-04-26 7:43 ` [net PATCH v4 09/10] octeontx2-af: Skip PFs if not enabled Sai Krishna
2023-04-26 10:00 ` Simon Horman
2023-05-02 3:10 ` [EXT] " Ratheesh Kannoth
2023-05-02 11:55 ` Simon Horman
2023-04-26 7:43 ` Sai Krishna [this message]
2023-04-26 10:06 ` [net PATCH v4 10/10] octeontx2-pf: Disable packet I/O for graceful exit Simon Horman
2023-04-27 7:14 ` Sai Krishna Gajula
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230426074345.750135-11-saikrishnag@marvell.com \
--to=saikrishnag@marvell.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=gakula@marvell.com \
--cc=hkelam@marvell.com \
--cc=jerinj@marvell.com \
--cc=kuba@kernel.org \
--cc=lcherian@marvell.com \
--cc=leon@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=sbhatta@marvell.com \
--cc=sgoutham@marvell.com \
--cc=simon.horman@corigine.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®