All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bowers, AndrewX <andrewx.bowers@intel.com>
To: intel-wired-lan@osuosl.org
Subject: [Intel-wired-lan] [PATCH S28 v2 1/9] ice: Reliably reset VFs
Date: Wed, 4 Sep 2019 22:25:24 +0000	[thread overview]
Message-ID: <450a5a5f23a04f9a8563d468accc414e@intel.com> (raw)
In-Reply-To: <20190903083108.19593-1-anthony.l.nguyen@intel.com>

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Tuesday, September 3, 2019 1:31 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S28 v2 1/9] ice: Reliably reset VFs
> 
> From: Mitch Williams <mitch.a.williams@intel.com>
> 
> When a PFR (or bigger reset) occurs, the device clears the VF_MBX_ARQLEN
> register for all VFs. But if a VFR is triggered by a VF, the device does NOT clear
> this register, and the VF driver will never see the reset.
> 
> When this happens, the VF driver will eventually timeout and attempt
> recovery, and usually it will be successful. But this makes resets take a long
> time and there are occasional failures.
> 
> We cannot just blithely clear this register on every reset; this has been
> shown to cause synchronization problems when a PFR is triggered with a
> large number of VFs.
> 
> Fix this by clearing VF_MBX_ARQLEN when the reset source is not PFR.
> GlobR will trigger PFR, so this test catches that occurrence as well.
> 
> Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)

Tested-by: Andrew Bowers <andrewx.bowers@intel.com>



      parent reply	other threads:[~2019-09-04 22:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-03  8:31 [Intel-wired-lan] [PATCH S28 v2 1/9] ice: Reliably reset VFs Tony Nguyen
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 2/9] ice: report link down for VF when PF's queues are not enabled Tony Nguyen
2019-09-04 22:25   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 3/9] ice: Check for DCB capability before initializing DCB Tony Nguyen
2019-09-04 22:26   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 4/9] ice: Report VF link status with opcode to get resources Tony Nguyen
2019-09-04 22:26   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 5/9] ice: update Tx context struct Tony Nguyen
2019-09-04 22:26   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 6/9] ice: Allow for delayed LLDP MIB change registration Tony Nguyen
2019-09-04 22:27   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 7/9] ice: Minor refactor in queue management Tony Nguyen
2019-09-04 22:27   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 8/9] ice: change default number of receive descriptors Tony Nguyen
2019-09-04 22:27   ` Bowers, AndrewX
2019-09-03  8:31 ` [Intel-wired-lan] [PATCH S28 v2 9/9] ice: Rework around device/function capabilities Tony Nguyen
2019-09-04 22:28   ` Bowers, AndrewX
2019-09-04 22:25 ` Bowers, AndrewX [this message]

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=450a5a5f23a04f9a8563d468accc414e@intel.com \
    --to=andrewx.bowers@intel.com \
    --cc=intel-wired-lan@osuosl.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.