From: Tony Nguyen <anthony.l.nguyen@intel.com>
To: davem@davemloft.net
Cc: Vignesh Sridhar <vignesh.sridhar@intel.com>,
netdev@vger.kernel.org, nhorman@redhat.com, sassmann@redhat.com,
jeffrey.t.kirsher@intel.com, anthony.l.nguyen@intel.com,
Andrew Bowers <andrewx.bowers@intel.com>
Subject: [net-next 07/14] ice: Clear and free XLT entries on reset
Date: Sat, 1 Aug 2020 09:17:55 -0700 [thread overview]
Message-ID: <20200801161802.867645-8-anthony.l.nguyen@intel.com> (raw)
In-Reply-To: <20200801161802.867645-1-anthony.l.nguyen@intel.com>
From: Vignesh Sridhar <vignesh.sridhar@intel.com>
This fix has been added to address memory leak issues resulting from
triggering a sudden driver reset which does not allow us to follow our
normal removal flows for SW XLT entries for advanced features.
- Adding call to destroy flow profile locks when clearing SW XLT tables.
- Extraction sequence entries were not correctly cleared previously
which could cause ownership conflicts for repeated reset-replay calls.
Fixes: 31ad4e4ee1e4 ("ice: Allocate flow profile")
Signed-off-by: Vignesh Sridhar <vignesh.sridhar@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
drivers/net/ethernet/intel/ice/ice_flex_pipe.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ice/ice_flex_pipe.c b/drivers/net/ethernet/intel/ice/ice_flex_pipe.c
index 3c217e51b27e..d59869b2c65e 100644
--- a/drivers/net/ethernet/intel/ice/ice_flex_pipe.c
+++ b/drivers/net/ethernet/intel/ice/ice_flex_pipe.c
@@ -2921,6 +2921,8 @@ static void ice_free_flow_profs(struct ice_hw *hw, u8 blk_idx)
ICE_FLOW_ENTRY_HNDL(e));
list_del(&p->l_entry);
+
+ mutex_destroy(&p->entries_lock);
devm_kfree(ice_hw_to_dev(hw), p);
}
mutex_unlock(&hw->fl_profs_locks[blk_idx]);
@@ -3038,7 +3040,7 @@ void ice_clear_hw_tbls(struct ice_hw *hw)
memset(prof_redir->t, 0,
prof_redir->count * sizeof(*prof_redir->t));
- memset(es->t, 0, es->count * sizeof(*es->t));
+ memset(es->t, 0, es->count * sizeof(*es->t) * es->fvw);
memset(es->ref_count, 0, es->count * sizeof(*es->ref_count));
memset(es->written, 0, es->count * sizeof(*es->written));
}
--
2.26.2
next prev parent reply other threads:[~2020-08-01 16:18 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-01 16:17 [net-next 00/14][pull request] 100GbE Intel Wired LAN Driver Updates 2020-08-01 Tony Nguyen
2020-08-01 16:17 ` [net-next 01/14] ice: mark PM functions as __maybe_unused Tony Nguyen
2020-08-01 16:17 ` [net-next 02/14] ice: rename misleading grst_delay variable Tony Nguyen
2020-08-01 16:17 ` [net-next 03/14] ice: fix the vsi_id mask to be 10 bit for set_rss_lut Tony Nguyen
2020-08-01 16:17 ` [net-next 04/14] ice: Fix RSS profile locks Tony Nguyen
2020-08-01 16:17 ` [net-next 05/14] ice: remove page_reuse statistic Tony Nguyen
2020-08-01 16:17 ` [net-next 06/14] ice: add useful statistics Tony Nguyen
2020-08-01 16:17 ` Tony Nguyen [this message]
2020-08-01 16:17 ` [net-next 08/14] ice: Allow 2 queue pairs per VF on SR-IOV initialization Tony Nguyen
2020-08-01 16:17 ` [net-next 09/14] ice: port fix for chk_linearlize Tony Nguyen
2020-08-01 16:17 ` [net-next 10/14] ice: Graceful error handling in HW table calloc failure Tony Nguyen
2020-08-01 16:17 ` [net-next 11/14] ice: Disable VLAN pruning in promiscuous mode Tony Nguyen
2020-08-01 16:18 ` [net-next 12/14] ice: update PTYPE lookup table Tony Nguyen
2020-08-01 16:18 ` [net-next 13/14] ice: adjust profile ID map locks Tony Nguyen
2020-08-01 16:18 ` [net-next 14/14] ice: Misc minor fixes Tony Nguyen
2020-08-03 22:44 ` [net-next 00/14][pull request] 100GbE Intel Wired LAN Driver Updates 2020-08-01 David Miller
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=20200801161802.867645-8-anthony.l.nguyen@intel.com \
--to=anthony.l.nguyen@intel.com \
--cc=andrewx.bowers@intel.com \
--cc=davem@davemloft.net \
--cc=jeffrey.t.kirsher@intel.com \
--cc=netdev@vger.kernel.org \
--cc=nhorman@redhat.com \
--cc=sassmann@redhat.com \
--cc=vignesh.sridhar@intel.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