All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI
@ 2019-07-29  9:04 Tony Nguyen
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP Tony Nguyen
                   ` (11 more replies)
  0 siblings, 12 replies; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Dave Ertman <david.m.ertman@intel.com>

For control packets (i.e. LLDP packets) to be able to egress
from the main VSI, a bit has to be set in the TX_descriptor.
This should only be done for the main VSI and only if the
FW LLDP agent is disabled.  A bit to allow this also has to
be set in the VSI context.

Add the logic to add the necessary bits in the VSI context
for the PF_VSI and the TX_descriptors for control packets
egressing the PF_VSI.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_lib.c  |  7 +++++++
 drivers/net/ethernet/intel/ice/ice_txrx.c | 11 ++++++++++-
 2 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_lib.c b/drivers/net/ethernet/intel/ice/ice_lib.c
index a62496a74a69..6b5882c49004 100644
--- a/drivers/net/ethernet/intel/ice/ice_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_lib.c
@@ -1021,6 +1021,13 @@ static int ice_vsi_init(struct ice_vsi *vsi, bool init_vsi)
 			ICE_AQ_VSI_SEC_FLAG_ENA_MAC_ANTI_SPOOF;
 	}
 
+	/* Allow control frames out of main VSI */
+	if (vsi->type == ICE_VSI_PF) {
+		ctxt->info.sec_flags |= ICE_AQ_VSI_SEC_FLAG_ALLOW_DEST_OVRD;
+		ctxt->info.valid_sections |=
+			cpu_to_le16(ICE_AQ_VSI_PROP_SECURITY_VALID);
+	}
+
 	if (init_vsi) {
 		ret = ice_add_vsi(hw, vsi->idx, ctxt, NULL);
 		if (ret) {
diff --git a/drivers/net/ethernet/intel/ice/ice_txrx.c b/drivers/net/ethernet/intel/ice/ice_txrx.c
index 75b0afe02015..190871b59c54 100644
--- a/drivers/net/ethernet/intel/ice/ice_txrx.c
+++ b/drivers/net/ethernet/intel/ice/ice_txrx.c
@@ -2107,6 +2107,7 @@ static netdev_tx_t
 ice_xmit_frame_ring(struct sk_buff *skb, struct ice_ring *tx_ring)
 {
 	struct ice_tx_offload_params offload = { 0 };
+	struct ice_vsi *vsi = tx_ring->vsi;
 	struct ice_tx_buf *first;
 	unsigned int count;
 	int tso, csum;
@@ -2154,7 +2155,15 @@ ice_xmit_frame_ring(struct sk_buff *skb, struct ice_ring *tx_ring)
 	if (csum < 0)
 		goto out_drop;
 
-	if (tso || offload.cd_tunnel_params) {
+	/* allow CONTROL frames egress from main VSI if FW LLDP disabled */
+	if (unlikely(skb->priority == TC_PRIO_CONTROL &&
+		     vsi->type == ICE_VSI_PF &&
+		     vsi->port_info->is_sw_lldp))
+		offload.cd_qw1 |= (u64)(ICE_TX_DESC_DTYPE_CTX |
+					ICE_TX_CTX_DESC_SWTCH_UPLINK <<
+					ICE_TXD_CTX_QW1_CMD_S);
+
+	if (offload.cd_qw1 & ICE_TX_DESC_DTYPE_CTX) {
 		struct ice_tx_ctx_desc *cdesc;
 		int i = tx_ring->next_to_use;
 
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:08   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call synchronize_irq() for VF's from the host Tony Nguyen
                   ` (10 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Dave Ertman <david.m.ertman@intel.com>

Currently, only the DCBx status is taken into account to
determine if FW LLDP is possible.  But there are NVM version
coming out with DCBx enabled, and FW LLDP disabled.  This
is causing errors where the driver sees that DCBx is not
disabled, and then tries to register for LLDP MIB change
events, and fails.

Change the logic to detect both DCBx and LLDP states in the
FW engine.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 34 +++++++-------------
 1 file changed, 12 insertions(+), 22 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_dcb_lib.c b/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
index d285aba3fea7..9ab9ec1ce19e 100644
--- a/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
@@ -324,6 +324,11 @@ void ice_dcb_rebuild(struct ice_pf *pf)
 	}
 
 	ice_init_dcb(&pf->hw);
+	if (pf->hw.port_info->dcbx_status == ICE_DCBX_STATUS_DIS)
+		pf->hw.port_info->is_sw_lldp = true;
+	else
+		pf->hw.port_info->is_sw_lldp = false;
+
 	if (ice_dcb_need_recfg(pf, prev_cfg, local_dcbx_cfg)) {
 		/* difference in cfg detected - disable DCB till next MIB */
 		dev_err(&pf->pdev->dev, "Set local MIB not accurate\n");
@@ -445,35 +450,17 @@ int ice_init_pf_dcb(struct ice_pf *pf, bool locked)
 	struct device *dev = &pf->pdev->dev;
 	struct ice_port_info *port_info;
 	struct ice_hw *hw = &pf->hw;
-	int sw_default = 0;
 	int err;
 
 	port_info = hw->port_info;
 
 	err = ice_init_dcb(hw);
 	if (err) {
-		/* FW LLDP is not active, default to SW DCBX/LLDP */
-		dev_info(&pf->pdev->dev, "FW LLDP is not active\n");
-		hw->port_info->dcbx_status = ICE_DCBX_STATUS_NOT_STARTED;
-		hw->port_info->is_sw_lldp = true;
-	}
-
-	if (port_info->dcbx_status == ICE_DCBX_STATUS_DIS)
-		dev_info(&pf->pdev->dev, "DCBX disabled\n");
-
-	/* LLDP disabled in FW */
-	if (port_info->is_sw_lldp) {
-		sw_default = 1;
-		dev_info(&pf->pdev->dev, "DCBx/LLDP in SW mode.\n");
+		/* FW LLDP is disabled, activate SW DCBX/LLDP mode */
+		dev_info(&pf->pdev->dev,
+			 "FW LLDP is disabled, DCBx/LLDP in SW mode.\n");
+		port_info->is_sw_lldp = true;
 		clear_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags);
-	} else {
-		set_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags);
-	}
-
-	if (port_info->dcbx_status == ICE_DCBX_STATUS_NOT_STARTED)
-		dev_info(&pf->pdev->dev, "DCBX not started\n");
-
-	if (sw_default) {
 		err = ice_dcb_sw_dflt_cfg(pf, locked);
 		if (err) {
 			dev_err(&pf->pdev->dev,
@@ -488,6 +475,9 @@ int ice_init_pf_dcb(struct ice_pf *pf, bool locked)
 		return 0;
 	}
 
+	port_info->is_sw_lldp = false;
+	set_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags);
+
 	/* DCBX in FW and LLDP enabled in FW */
 	pf->dcbx_cap = DCB_CAP_DCBX_LLD_MANAGED | DCB_CAP_DCBX_VER_IEEE;
 
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call synchronize_irq() for VF's from the host
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:08   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state NOT_STARTED as valid Tony Nguyen
                   ` (9 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Brett Creeley <brett.creeley@intel.com>

Currently we will call synchronize_irq() from the host for VF's. This is
not correct, so don't allow it.

Signed-off-by: Brett Creeley <brett.creeley@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_lib.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/ethernet/intel/ice/ice_lib.c b/drivers/net/ethernet/intel/ice/ice_lib.c
index 6b5882c49004..42645c074691 100644
--- a/drivers/net/ethernet/intel/ice/ice_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_lib.c
@@ -2837,6 +2837,10 @@ void ice_vsi_dis_irq(struct ice_vsi *vsi)
 
 	ice_flush(hw);
 
+	/* don't call synchronize_irq() for VF's from the host */
+	if (vsi->type == ICE_VSI_VF)
+		return;
+
 	ice_for_each_q_vector(vsi, i)
 		synchronize_irq(pf->msix_entries[i + base].vector);
 }
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state NOT_STARTED as valid
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP Tony Nguyen
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call synchronize_irq() for VF's from the host Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:09   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when setting Rx channels Tony Nguyen
                   ` (8 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Dave Ertman <david.m.ertman@intel.com>

When a port is not cabled, but DCBx is enabled in the
firmware, the status of DCBx will be NOT_STARTED.  This
is a valid state for FW enabled and should not be
treated as a is_fw_lldp true automatically.

Add the code to treat NOT_STARTED as another valid state.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_dcb.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_dcb.c b/drivers/net/ethernet/intel/ice/ice_dcb.c
index c2002ded65f6..d60c942249e8 100644
--- a/drivers/net/ethernet/intel/ice/ice_dcb.c
+++ b/drivers/net/ethernet/intel/ice/ice_dcb.c
@@ -954,7 +954,8 @@ enum ice_status ice_init_dcb(struct ice_hw *hw)
 	pi->dcbx_status = ice_get_dcbx_status(hw);
 
 	if (pi->dcbx_status == ICE_DCBX_STATUS_DONE ||
-	    pi->dcbx_status == ICE_DCBX_STATUS_IN_PROGRESS) {
+	    pi->dcbx_status == ICE_DCBX_STATUS_IN_PROGRESS ||
+	    pi->dcbx_status == ICE_DCBX_STATUS_NOT_STARTED) {
 		/* Get current DCBX configuration */
 		ret = ice_get_dcb_cfg(pi);
 		pi->is_sw_lldp = (hw->adminq.sq_last_status == ICE_AQ_RC_EPERM);
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when setting Rx channels
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (2 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state NOT_STARTED as valid Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:10   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration only if mode is correct Tony Nguyen
                   ` (7 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Brett Creeley <brett.creeley@intel.com>

Currently there are multiple problems involved with setting Rx channels
in regards to the RSS LUT. First, if the user set the indirection table
manually through ethtool, changing the Rx channels will blindly use the
user set value. Second when increasing the number of Rx channels the RSS
table size is doing of minimum of the last RSS table width and the newly
requested one, this is causing the previously set RSS table width to be
used.

Fix these issues by adding the function ice_pf_set_dflt_rss_lut() that
is called when changing the number of Rx channels. This function updates
the RSS LUT to the default configuration for the PF any time the user
has changed the number of Rx channels.

Signed-off-by: Brett Creeley <brett.creeley@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
v2: Change function to take VSI instead of PF
---
 drivers/net/ethernet/intel/ice/ice_ethtool.c | 63 ++++++++++++++++++++
 1 file changed, 63 insertions(+)

diff --git a/drivers/net/ethernet/intel/ice/ice_ethtool.c b/drivers/net/ethernet/intel/ice/ice_ethtool.c
index ba29aede99ad..2d37dd4ba677 100644
--- a/drivers/net/ethernet/intel/ice/ice_ethtool.c
+++ b/drivers/net/ethernet/intel/ice/ice_ethtool.c
@@ -3154,6 +3154,66 @@ ice_get_channels(struct net_device *dev, struct ethtool_channels *ch)
 	ch->tx_count = vsi->num_txq;
 }
 
+/**
+ * ice_vsi_set_dflt_rss_lut - set default RSS LUT with requested RSS size
+ * @vsi: VSI to reconfigure RSS LUT on
+ * @req_rss_size: requested range of queue numbers for hashing
+ *
+ * Set the VSI's RSS parameters, configure the RSS LUT based on these, and then
+ * clear the previous vsi->rss_lut_user because it is assumed to be invalid at
+ * this point.
+ */
+static int ice_vsi_set_dflt_rss_lut(struct ice_vsi *vsi, int req_rss_size)
+{
+	struct ice_pf *pf = vsi->back;
+	enum ice_status status;
+	struct device *dev;
+	struct ice_hw *hw;
+	int err = 0;
+	u8 *lut;
+
+	dev = &pf->pdev->dev;
+	hw = &pf->hw;
+
+	if (!req_rss_size)
+		return -EINVAL;
+
+	lut = devm_kzalloc(dev, vsi->rss_table_size, GFP_KERNEL);
+	if (!lut)
+		return -ENOMEM;
+
+	/* set RSS LUT parameters */
+	if (!test_bit(ICE_FLAG_RSS_ENA, pf->flags)) {
+		vsi->rss_size = 1;
+	} else {
+		struct ice_hw_common_caps *caps = &hw->func_caps.common_cap;
+
+		vsi->rss_size = min_t(int, req_rss_size,
+				      BIT(caps->rss_table_entry_width));
+	}
+
+	/* create/set RSS LUT */
+	ice_fill_rss_lut(lut, vsi->rss_table_size, vsi->rss_size);
+	status = ice_aq_set_rss_lut(hw, vsi->idx, vsi->rss_lut_type, lut,
+				    vsi->rss_table_size);
+	if (status) {
+		dev_err(dev, "Cannot set RSS lut, err %d aq_err %d\n",
+			status, hw->adminq.sq_last_status);
+		err = -EIO;
+	}
+
+	/* get rid of invalid user configuration */
+	if (vsi->rss_lut_user) {
+		netdev_info(vsi->netdev,
+			    "Rx queue count changed, clearing user modified RSS LUT, re-run ethtool [-x|-X] to [check|set] settings if needed\n");
+		devm_kfree(dev, vsi->rss_lut_user);
+		vsi->rss_lut_user = NULL;
+	}
+
+	devm_kfree(dev, lut);
+	return err;
+}
+
 /**
  * ice_set_channels - set the number channels
  * @dev: network interface device structure
@@ -3189,6 +3249,9 @@ static int ice_set_channels(struct net_device *dev, struct ethtool_channels *ch)
 
 	ice_vsi_recfg_qs(vsi, new_rx, new_tx);
 
+	if (new_rx)
+		return ice_vsi_set_dflt_rss_lut(vsi, new_rx);
+
 	return 0;
 }
 
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration only if mode is correct
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (3 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when setting Rx channels Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:10   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to enable head writeback Tony Nguyen
                   ` (6 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Michal Swiatkowski <michal.swiatkowski@intel.com>

In rebuild DCB desired_dcbx_cfg was copy to local_dcbx_cfg, but
if DCBX mode is IEEE desired_dcbx_cfg is not initialized by DCBX
config from FW. Change logic to copy config value only if mode is
set to CEE.

If driver copy desired_dcbx_cfg to local_dcbx_cfg in IEEE mode there
is problem with globr. System is frozen after two or more globr.

Signed-off-by: Michal Swiatkowski <michal.swiatkowski@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_dcb_lib.c b/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
index 9ab9ec1ce19e..2a868eea2a37 100644
--- a/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
@@ -339,8 +339,10 @@ void ice_dcb_rebuild(struct ice_pf *pf)
 	devm_kfree(&pf->pdev->dev, prev_cfg);
 
 	/* Set the local desired config */
-	memset(&pf->hw.port_info->local_dcbx_cfg, 0, sizeof(*local_dcbx_cfg));
-	memcpy(local_dcbx_cfg, desired_dcbx_cfg, sizeof(*local_dcbx_cfg));
+	if (local_dcbx_cfg->dcbx_mode == ICE_DCBX_MODE_CEE)
+		memcpy(local_dcbx_cfg, desired_dcbx_cfg,
+		       sizeof(*local_dcbx_cfg));
+
 	ice_cfg_etsrec_defaults(pf->hw.port_info);
 	ret = ice_set_dcb_cfg(pf->hw.port_info);
 	if (ret) {
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to enable head writeback
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (4 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration only if mode is correct Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:11   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private flag for lldp Tony Nguyen
                   ` (5 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Jacob Keller <jacob.e.keller@intel.com>

The virtchnl interface provides a mechanism for a VF driver to request
head writeback support. This feature is deprecated as of AVF 1.0, but
older versions of a VF driver may still attempt to request the mode.

Since the ice hardware does not support head writeback, we should not
accept Tx queue configuration which attempts to enable it.

Currently, the driver simply assumes that the headwb_enabled bit will
never be set.

If a VF driver does request head writeback, the configuration will
return successfully, even though head writeback is not enabled. This
leaves the VF driver in a non functional state since it is assuming to
be operating in head writeback mode.

Fix the PF driver to reject any attempt to setup headwb_enabled.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
index 1b1d1ea0c8f9..73ab6222d29b 100644
--- a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
+++ b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
@@ -2109,6 +2109,7 @@ static int ice_vc_cfg_qs_msg(struct ice_vf *vf, u8 *msg)
 		if (qpi->txq.vsi_id != qci->vsi_id ||
 		    qpi->rxq.vsi_id != qci->vsi_id ||
 		    qpi->rxq.queue_id != qpi->txq.queue_id ||
+		    qpi->txq.headwb_enabled ||
 		    !ice_vc_isvalid_q_id(vf, qci->vsi_id, qpi->txq.queue_id)) {
 			v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 			goto error_param;
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private flag for lldp
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (5 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to enable head writeback Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:11   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error messages Tony Nguyen
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Dave Ertman <david.m.ertman@intel.com>

The current flag name of "enable-fw-lldp" is a bit cumbersome.

Change priv-flag name to "fw-lldp-agent" with a value of on or
off.  This is more straight-forward in meaning.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
---
 drivers/net/ethernet/intel/ice/ice.h         | 2 +-
 drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 4 ++--
 drivers/net/ethernet/intel/ice/ice_ethtool.c | 6 +++---
 drivers/net/ethernet/intel/ice/ice_lib.c     | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice.h b/drivers/net/ethernet/intel/ice/ice.h
index 8398dd45a8a2..0e233b7c40bc 100644
--- a/drivers/net/ethernet/intel/ice/ice.h
+++ b/drivers/net/ethernet/intel/ice/ice.h
@@ -331,7 +331,7 @@ enum ice_pf_flags {
 	ICE_FLAG_DCB_ENA,
 	ICE_FLAG_LINK_DOWN_ON_CLOSE_ENA,
 	ICE_FLAG_NO_MEDIA,
-	ICE_FLAG_ENABLE_FW_LLDP,
+	ICE_FLAG_FW_LLDP_AGENT,
 	ICE_FLAG_ETHTOOL_CTXT,		/* set when ethtool holds RTNL lock */
 	ICE_PF_FLAGS_NBITS		/* must be last */
 };
diff --git a/drivers/net/ethernet/intel/ice/ice_dcb_lib.c b/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
index 2a868eea2a37..21405958aa63 100644
--- a/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_dcb_lib.c
@@ -462,7 +462,7 @@ int ice_init_pf_dcb(struct ice_pf *pf, bool locked)
 		dev_info(&pf->pdev->dev,
 			 "FW LLDP is disabled, DCBx/LLDP in SW mode.\n");
 		port_info->is_sw_lldp = true;
-		clear_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags);
+		clear_bit(ICE_FLAG_FW_LLDP_AGENT, pf->flags);
 		err = ice_dcb_sw_dflt_cfg(pf, locked);
 		if (err) {
 			dev_err(&pf->pdev->dev,
@@ -478,7 +478,7 @@ int ice_init_pf_dcb(struct ice_pf *pf, bool locked)
 	}
 
 	port_info->is_sw_lldp = false;
-	set_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags);
+	set_bit(ICE_FLAG_FW_LLDP_AGENT, pf->flags);
 
 	/* DCBX in FW and LLDP enabled in FW */
 	pf->dcbx_cap = DCB_CAP_DCBX_LLD_MANAGED | DCB_CAP_DCBX_VER_IEEE;
diff --git a/drivers/net/ethernet/intel/ice/ice_ethtool.c b/drivers/net/ethernet/intel/ice/ice_ethtool.c
index 2d37dd4ba677..36ba667d0b57 100644
--- a/drivers/net/ethernet/intel/ice/ice_ethtool.c
+++ b/drivers/net/ethernet/intel/ice/ice_ethtool.c
@@ -155,7 +155,7 @@ struct ice_priv_flag {
 
 static const struct ice_priv_flag ice_gstrings_priv_flags[] = {
 	ICE_PRIV_FLAG("link-down-on-close", ICE_FLAG_LINK_DOWN_ON_CLOSE_ENA),
-	ICE_PRIV_FLAG("enable-fw-lldp", ICE_FLAG_ENABLE_FW_LLDP),
+	ICE_PRIV_FLAG("fw-lldp-agent", ICE_FLAG_FW_LLDP_AGENT),
 };
 
 #define ICE_PRIV_FLAG_ARRAY_SIZE	ARRAY_SIZE(ice_gstrings_priv_flags)
@@ -1201,8 +1201,8 @@ static int ice_set_priv_flags(struct net_device *netdev, u32 flags)
 
 	bitmap_xor(change_flags, pf->flags, orig_flags, ICE_PF_FLAGS_NBITS);
 
-	if (test_bit(ICE_FLAG_ENABLE_FW_LLDP, change_flags)) {
-		if (!test_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags)) {
+	if (test_bit(ICE_FLAG_FW_LLDP_AGENT, change_flags)) {
+		if (!test_bit(ICE_FLAG_FW_LLDP_AGENT, pf->flags)) {
 			enum ice_status status;
 
 			/* Disable FW LLDP engine */
diff --git a/drivers/net/ethernet/intel/ice/ice_lib.c b/drivers/net/ethernet/intel/ice/ice_lib.c
index 42645c074691..aff65333c302 100644
--- a/drivers/net/ethernet/intel/ice/ice_lib.c
+++ b/drivers/net/ethernet/intel/ice/ice_lib.c
@@ -2561,7 +2561,7 @@ ice_vsi_setup(struct ice_pf *pf, struct ice_port_info *pi,
 		ice_cfg_sw_lldp(vsi, true, true);
 
 		/* Rx LLDP packets */
-		if (!test_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags))
+		if (!test_bit(ICE_FLAG_FW_LLDP_AGENT, pf->flags))
 			ice_cfg_sw_lldp(vsi, false, true);
 	}
 
@@ -2908,7 +2908,7 @@ int ice_vsi_release(struct ice_vsi *vsi)
 		/* The Rx rule will only exist to remove if the LLDP FW
 		 * engine is currently stopped
 		 */
-		if (!test_bit(ICE_FLAG_ENABLE_FW_LLDP, pf->flags))
+		if (!test_bit(ICE_FLAG_FW_LLDP_AGENT, pf->flags))
 			ice_cfg_sw_lldp(vsi, false, false);
 	}
 
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error messages
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (6 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private flag for lldp Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:12   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module query Tony Nguyen
                   ` (3 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Mitch Williams <mitch.a.williams@intel.com>

In some circumstances, VF devices can be deactivated while a message is
in-flight. In that case, a series of  scary error message will be
printed in the log. Since these are actually harmless, check for this
case and suppress them. No harm, no foul.

Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_adminq_cmd.h  | 1 +
 drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h b/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h
index 765e3c2ed045..01ef2f290c5e 100644
--- a/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h
+++ b/drivers/net/ethernet/intel/ice/ice_adminq_cmd.h
@@ -1610,6 +1610,7 @@ enum ice_aq_err {
 	ICE_AQ_RC_EBUSY		= 12, /* Device or resource busy */
 	ICE_AQ_RC_EEXIST	= 13, /* Object already exists */
 	ICE_AQ_RC_ENOSPC	= 16, /* No space left or allocation failure */
+	ICE_AQ_RC_ENOSYS        = 17, /* Function not implemented */
 };
 
 /* Admin Queue command opcodes */
diff --git a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
index 73ab6222d29b..83e58e71081e 100644
--- a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
+++ b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
@@ -1512,10 +1512,10 @@ ice_vc_send_msg_to_vf(struct ice_vf *vf, u32 v_opcode,
 
 	aq_ret = ice_aq_send_msg_to_vf(&pf->hw, vf->vf_id, v_opcode, v_retval,
 				       msg, msglen, NULL);
-	if (aq_ret) {
+	if (aq_ret && pf->hw.mailboxq.sq_last_status != ICE_AQ_RC_ENOSYS) {
 		dev_info(&pf->pdev->dev,
-			 "Unable to send the message to VF %d aq_err %d\n",
-			 vf->vf_id, pf->hw.mailboxq.sq_last_status);
+			 "Unable to send the message to VF %d ret %d aq_err %d\n",
+			 vf->vf_id, aq_ret, pf->hw.mailboxq.sq_last_status);
 		return -EIO;
 	}
 
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module query
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (7 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error messages Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:12   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() Tony Nguyen
                   ` (2 subsequent siblings)
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Chinh T Cao <chinh.t.cao@intel.com>

When checking the PHY for status, by specification, the driver
should be using "toplogy" mode when querying the module type.

Signed-off-by: Chinh T Cao <chinh.t.cao@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_common.c b/drivers/net/ethernet/intel/ice/ice_common.c
index 5f9dc76699d2..15648d4a8bab 100644
--- a/drivers/net/ethernet/intel/ice/ice_common.c
+++ b/drivers/net/ethernet/intel/ice/ice_common.c
@@ -2031,7 +2031,7 @@ enum ice_status ice_update_link_info(struct ice_port_info *pi)
 		if (!pcaps)
 			return ICE_ERR_NO_MEMORY;
 
-		status = ice_aq_get_phy_caps(pi, false, ICE_AQC_REPORT_SW_CFG,
+		status = ice_aq_get_phy_caps(pi, false, ICE_AQC_REPORT_TOPO_CAP,
 					     pcaps, NULL);
 		if (!status)
 			memcpy(li->module_type, &pcaps->module_type,
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in ice_cfg_phy_fec()
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (8 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module query Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:13   ` Bowers, AndrewX
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for virtual channel handlers Tony Nguyen
  2019-07-31 17:07 ` [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Bowers, AndrewX
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: Chinh T Cao <chinh.t.cao@intel.com>

The driver should never clear the auto_fec_enable bit.

Signed-off-by: Chinh T Cao <chinh.t.cao@intel.com>
---
 drivers/net/ethernet/intel/ice/ice_common.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_common.c b/drivers/net/ethernet/intel/ice/ice_common.c
index 15648d4a8bab..4b43e6de847b 100644
--- a/drivers/net/ethernet/intel/ice/ice_common.c
+++ b/drivers/net/ethernet/intel/ice/ice_common.c
@@ -2181,27 +2181,24 @@ ice_cfg_phy_fec(struct ice_aqc_set_phy_cfg_data *cfg, enum ice_fec_mode fec)
 {
 	switch (fec) {
 	case ICE_FEC_BASER:
-		/* Clear auto FEC and RS bits, and AND BASE-R ability
+		/* Clear RS bits, and AND BASE-R ability
 		 * bits and OR request bits.
 		 */
-		cfg->caps &= ~ICE_AQC_PHY_EN_AUTO_FEC;
 		cfg->link_fec_opt &= ICE_AQC_PHY_FEC_10G_KR_40G_KR4_EN |
 				     ICE_AQC_PHY_FEC_25G_KR_CLAUSE74_EN;
 		cfg->link_fec_opt |= ICE_AQC_PHY_FEC_10G_KR_40G_KR4_REQ |
 				     ICE_AQC_PHY_FEC_25G_KR_REQ;
 		break;
 	case ICE_FEC_RS:
-		/* Clear auto FEC and BASE-R bits, and AND RS ability
+		/* Clear BASE-R bits, and AND RS ability
 		 * bits and OR request bits.
 		 */
-		cfg->caps &= ~ICE_AQC_PHY_EN_AUTO_FEC;
 		cfg->link_fec_opt &= ICE_AQC_PHY_FEC_25G_RS_CLAUSE91_EN;
 		cfg->link_fec_opt |= ICE_AQC_PHY_FEC_25G_RS_528_REQ |
 				     ICE_AQC_PHY_FEC_25G_RS_544_REQ;
 		break;
 	case ICE_FEC_NONE:
-		/* Clear auto FEC and all FEC option bits. */
-		cfg->caps &= ~ICE_AQC_PHY_EN_AUTO_FEC;
+		/* Clear all FEC option bits. */
 		cfg->link_fec_opt &= ~ICE_AQC_PHY_FEC_MASK;
 		break;
 	case ICE_FEC_AUTO:
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for virtual channel handlers
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (9 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() Tony Nguyen
@ 2019-07-29  9:04 ` Tony Nguyen
  2019-07-31 17:13   ` Bowers, AndrewX
  2019-07-31 17:07 ` [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Bowers, AndrewX
  11 siblings, 1 reply; 24+ messages in thread
From: Tony Nguyen @ 2019-07-29  9:04 UTC (permalink / raw)
  To: intel-wired-lan

From: "Amruth G.P" <amruth.gouda.parameshwarappa@intel.com>

Move the assignment to local variables after validation.

Remove unnecessary checks in ice_vc_process_vf_msg() as the respective
functions are now performing the checks.

Signed-off-by: Amruth G.P <amruth.gouda.parameshwarappa@intel.com>
Signed-off-by: Nitesh B Venkatesh <nitesh.b.venkatesh@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
---
v2: Move Tx|Rx queue check from ice_vc_get_stats_msg() to
ice_vc_ena_qs_msg()
---
 .../net/ethernet/intel/ice/ice_virtchnl_pf.c  | 64 +++++++++----------
 1 file changed, 32 insertions(+), 32 deletions(-)

diff --git a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
index 83e58e71081e..de0a1ef54e83 100644
--- a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
+++ b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c
@@ -1734,18 +1734,18 @@ static int ice_vc_config_rss_key(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
-	vsi = pf->vsi[vf->lan_vsi_idx];
-	if (!vsi) {
+	if (vrk->key_len != ICE_VSIQF_HKEY_ARRAY_SIZE) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 		goto error_param;
 	}
 
-	if (vrk->key_len != ICE_VSIQF_HKEY_ARRAY_SIZE) {
+	if (!test_bit(ICE_FLAG_RSS_ENA, vf->pf->flags)) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 		goto error_param;
 	}
 
-	if (!test_bit(ICE_FLAG_RSS_ENA, vf->pf->flags)) {
+	vsi = pf->vsi[vf->lan_vsi_idx];
+	if (!vsi) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 		goto error_param;
 	}
@@ -1781,18 +1781,18 @@ static int ice_vc_config_rss_lut(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
-	vsi = pf->vsi[vf->lan_vsi_idx];
-	if (!vsi) {
+	if (vrl->lut_entries != ICE_VSIQF_HLUT_ARRAY_SIZE) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 		goto error_param;
 	}
 
-	if (vrl->lut_entries != ICE_VSIQF_HLUT_ARRAY_SIZE) {
+	if (!test_bit(ICE_FLAG_RSS_ENA, vf->pf->flags)) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 		goto error_param;
 	}
 
-	if (!test_bit(ICE_FLAG_RSS_ENA, vf->pf->flags)) {
+	vsi = pf->vsi[vf->lan_vsi_idx];
+	if (!vsi) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
 		goto error_param;
 	}
@@ -1877,6 +1877,12 @@ static int ice_vc_ena_qs_msg(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
+	if (vqs->rx_queues > ICE_MAX_BASE_QS_PER_VF ||
+	    vqs->tx_queues > ICE_MAX_BASE_QS_PER_VF) {
+		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
+		goto error_param;
+	}
+
 	vsi = pf->vsi[vf->lan_vsi_idx];
 	if (!vsi) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
@@ -1932,6 +1938,12 @@ static int ice_vc_dis_qs_msg(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
+	if (vqs->rx_queues > ICE_MAX_BASE_QS_PER_VF ||
+	    vqs->tx_queues > ICE_MAX_BASE_QS_PER_VF) {
+		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
+		goto error_param;
+	}
+
 	vsi = pf->vsi[vf->lan_vsi_idx];
 	if (!vsi) {
 		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
@@ -1984,12 +1996,6 @@ static int ice_vc_cfg_irq_map_msg(struct ice_vf *vf, u8 *msg)
 	irqmap_info = (struct virtchnl_irq_map_info *)msg;
 	num_q_vectors_mapped = irqmap_info->num_vectors;
 
-	vsi = pf->vsi[vf->lan_vsi_idx];
-	if (!vsi) {
-		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
-		goto error_param;
-	}
-
 	/* Check to make sure number of VF vectors mapped is not greater than
 	 * number of VF vectors originally allocated, and check that
 	 * there is actually at least a single VF queue vector mapped
@@ -2001,6 +2007,12 @@ static int ice_vc_cfg_irq_map_msg(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
+	vsi = pf->vsi[vf->lan_vsi_idx];
+	if (!vsi) {
+		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
+		goto error_param;
+	}
+
 	for (i = 0; i < num_q_vectors_mapped; i++) {
 		struct ice_q_vector *q_vector;
 
@@ -2092,10 +2104,6 @@ static int ice_vc_cfg_qs_msg(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
-	vsi = pf->vsi[vf->lan_vsi_idx];
-	if (!vsi)
-		goto error_param;
-
 	if (qci->num_queue_pairs > ICE_MAX_BASE_QS_PER_VF) {
 		dev_err(&pf->pdev->dev,
 			"VF-%d requesting more than supported number of queues: %d\n",
@@ -2104,6 +2112,12 @@ static int ice_vc_cfg_qs_msg(struct ice_vf *vf, u8 *msg)
 		goto error_param;
 	}
 
+	vsi = pf->vsi[vf->lan_vsi_idx];
+	if (!vsi) {
+		v_ret = VIRTCHNL_STATUS_ERR_PARAM;
+		goto error_param;
+	}
+
 	for (i = 0; i < qci->num_queue_pairs; i++) {
 		qpi = &qci->qpair[i];
 		if (qpi->txq.vsi_id != qci->vsi_id ||
@@ -2755,20 +2769,6 @@ void ice_vc_process_vf_msg(struct ice_pf *pf, struct ice_rq_event_info *event)
 			err = -EPERM;
 		else
 			err = -EINVAL;
-		goto error_handler;
-	}
-
-	/* Perform additional checks specific to RSS and Virtchnl */
-	if (v_opcode == VIRTCHNL_OP_CONFIG_RSS_KEY) {
-		struct virtchnl_rss_key *vrk = (struct virtchnl_rss_key *)msg;
-
-		if (vrk->key_len != ICE_VSIQF_HKEY_ARRAY_SIZE)
-			err = -EINVAL;
-	} else if (v_opcode == VIRTCHNL_OP_CONFIG_RSS_LUT) {
-		struct virtchnl_rss_lut *vrl = (struct virtchnl_rss_lut *)msg;
-
-		if (vrl->lut_entries != ICE_VSIQF_HLUT_ARRAY_SIZE)
-			err = -EINVAL;
 	}
 
 error_handler:
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI
  2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
                   ` (10 preceding siblings ...)
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for virtual channel handlers Tony Nguyen
@ 2019-07-31 17:07 ` Bowers, AndrewX
  11 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:07 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control
> packets from PF_VSI
> 
> From: Dave Ertman <david.m.ertman@intel.com>
> 
> For control packets (i.e. LLDP packets) to be able to egress from the main VSI,
> a bit has to be set in the TX_descriptor.
> This should only be done for the main VSI and only if the FW LLDP agent is
> disabled.  A bit to allow this also has to be set in the VSI context.
> 
> Add the logic to add the necessary bits in the VSI context for the PF_VSI and
> the TX_descriptors for control packets egressing the PF_VSI.
> 
> Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_lib.c  |  7 +++++++
> drivers/net/ethernet/intel/ice/ice_txrx.c | 11 ++++++++++-
>  2 files changed, 17 insertions(+), 1 deletion(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP Tony Nguyen
@ 2019-07-31 17:08   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:08 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of
> FW DCBx and LLDP
> 
> From: Dave Ertman <david.m.ertman@intel.com>
> 
> Currently, only the DCBx status is taken into account to determine if FW LLDP
> is possible.  But there are NVM version coming out with DCBx enabled, and
> FW LLDP disabled.  This is causing errors where the driver sees that DCBx is
> not disabled, and then tries to register for LLDP MIB change events, and fails.
> 
> Change the logic to detect both DCBx and LLDP states in the FW engine.
> 
> Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 34 +++++++-------------
>  1 file changed, 12 insertions(+), 22 deletions(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call synchronize_irq() for VF's from the host
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call synchronize_irq() for VF's from the host Tony Nguyen
@ 2019-07-31 17:08   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:08 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call
> synchronize_irq() for VF's from the host
> 
> From: Brett Creeley <brett.creeley@intel.com>
> 
> Currently we will call synchronize_irq() from the host for VF's. This is not
> correct, so don't allow it.
> 
> Signed-off-by: Brett Creeley <brett.creeley@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_lib.c | 4 ++++
>  1 file changed, 4 insertions(+)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state NOT_STARTED as valid
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state NOT_STARTED as valid Tony Nguyen
@ 2019-07-31 17:09   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:09 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state
> NOT_STARTED as valid
> 
> From: Dave Ertman <david.m.ertman@intel.com>
> 
> When a port is not cabled, but DCBx is enabled in the firmware, the status of
> DCBx will be NOT_STARTED.  This is a valid state for FW enabled and should
> not be treated as a is_fw_lldp true automatically.
> 
> Add the code to treat NOT_STARTED as another valid state.
> 
> Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_dcb.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)


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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when setting Rx channels
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when setting Rx channels Tony Nguyen
@ 2019-07-31 17:10   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:10 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when
> setting Rx channels
> 
> From: Brett Creeley <brett.creeley@intel.com>
> 
> Currently there are multiple problems involved with setting Rx channels in
> regards to the RSS LUT. First, if the user set the indirection table manually
> through ethtool, changing the Rx channels will blindly use the user set value.
> Second when increasing the number of Rx channels the RSS table size is
> doing of minimum of the last RSS table width and the newly requested one,
> this is causing the previously set RSS table width to be used.
> 
> Fix these issues by adding the function ice_pf_set_dflt_rss_lut() that is called
> when changing the number of Rx channels. This function updates the RSS
> LUT to the default configuration for the PF any time the user has changed the
> number of Rx channels.
> 
> Signed-off-by: Brett Creeley <brett.creeley@intel.com>
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
> ---
> v2: Change function to take VSI instead of PF
> ---
>  drivers/net/ethernet/intel/ice/ice_ethtool.c | 63 ++++++++++++++++++++
>  1 file changed, 63 insertions(+)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration only if mode is correct
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration only if mode is correct Tony Nguyen
@ 2019-07-31 17:10   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:10 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration
> only if mode is correct
> 
> From: Michal Swiatkowski <michal.swiatkowski@intel.com>
> 
> In rebuild DCB desired_dcbx_cfg was copy to local_dcbx_cfg, but if DCBX
> mode is IEEE desired_dcbx_cfg is not initialized by DCBX config from FW.
> Change logic to copy config value only if mode is set to CEE.
> 
> If driver copy desired_dcbx_cfg to local_dcbx_cfg in IEEE mode there is
> problem with globr. System is frozen after two or more globr.
> 
> Signed-off-by: Michal Swiatkowski <michal.swiatkowski@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to enable head writeback
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to enable head writeback Tony Nguyen
@ 2019-07-31 17:11   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:11 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to
> enable head writeback
> 
> From: Jacob Keller <jacob.e.keller@intel.com>
> 
> The virtchnl interface provides a mechanism for a VF driver to request head
> writeback support. This feature is deprecated as of AVF 1.0, but older
> versions of a VF driver may still attempt to request the mode.
> 
> Since the ice hardware does not support head writeback, we should not
> accept Tx queue configuration which attempts to enable it.
> 
> Currently, the driver simply assumes that the headwb_enabled bit will never
> be set.
> 
> If a VF driver does request head writeback, the configuration will return
> successfully, even though head writeback is not enabled. This leaves the VF
> driver in a non functional state since it is assuming to be operating in head
> writeback mode.
> 
> Fix the PF driver to reject any attempt to setup headwb_enabled.
> 
> Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 1 +
>  1 file changed, 1 insertion(+)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private flag for lldp
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private flag for lldp Tony Nguyen
@ 2019-07-31 17:11   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:11 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private
> flag for lldp
> 
> From: Dave Ertman <david.m.ertman@intel.com>
> 
> The current flag name of "enable-fw-lldp" is a bit cumbersome.
> 
> Change priv-flag name to "fw-lldp-agent" with a value of on or off.  This is
> more straight-forward in meaning.
> 
> Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice.h         | 2 +-
>  drivers/net/ethernet/intel/ice/ice_dcb_lib.c | 4 ++--
> drivers/net/ethernet/intel/ice/ice_ethtool.c | 6 +++---
>  drivers/net/ethernet/intel/ice/ice_lib.c     | 4 ++--
>  4 files changed, 8 insertions(+), 8 deletions(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error messages
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error messages Tony Nguyen
@ 2019-07-31 17:12   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:12 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error
> messages
> 
> From: Mitch Williams <mitch.a.williams@intel.com>
> 
> In some circumstances, VF devices can be deactivated while a message is in-
> flight. In that case, a series of  scary error message will be printed in the log.
> Since these are actually harmless, check for this case and suppress them. No
> harm, no foul.
> 
> Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_adminq_cmd.h  | 1 +
> drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 6 +++---
>  2 files changed, 4 insertions(+), 3 deletions(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module query
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module query Tony Nguyen
@ 2019-07-31 17:12   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:12 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module
> query
> 
> From: Chinh T Cao <chinh.t.cao@intel.com>
> 
> When checking the PHY for status, by specification, the driver should be
> using "toplogy" mode when querying the module type.
> 
> Signed-off-by: Chinh T Cao <chinh.t.cao@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_common.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in ice_cfg_phy_fec()
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() Tony Nguyen
@ 2019-07-31 17:13   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:13 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in
> ice_cfg_phy_fec()
> 
> From: Chinh T Cao <chinh.t.cao@intel.com>
> 
> The driver should never clear the auto_fec_enable bit.
> 
> Signed-off-by: Chinh T Cao <chinh.t.cao@intel.com>
> ---
>  drivers/net/ethernet/intel/ice/ice_common.c | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

* [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for virtual channel handlers
  2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for virtual channel handlers Tony Nguyen
@ 2019-07-31 17:13   ` Bowers, AndrewX
  0 siblings, 0 replies; 24+ messages in thread
From: Bowers, AndrewX @ 2019-07-31 17:13 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Tony Nguyen
> Sent: Monday, July 29, 2019 2:05 AM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for
> virtual channel handlers
> 
> From: "Amruth G.P" <amruth.gouda.parameshwarappa@intel.com>
> 
> Move the assignment to local variables after validation.
> 
> Remove unnecessary checks in ice_vc_process_vf_msg() as the respective
> functions are now performing the checks.
> 
> Signed-off-by: Amruth G.P <amruth.gouda.parameshwarappa@intel.com>
> Signed-off-by: Nitesh B Venkatesh <nitesh.b.venkatesh@intel.com>
> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
> ---
> v2: Move Tx|Rx queue check from ice_vc_get_stats_msg() to
> ice_vc_ena_qs_msg()
> ---
>  .../net/ethernet/intel/ice/ice_virtchnl_pf.c  | 64 +++++++++----------
>  1 file changed, 32 insertions(+), 32 deletions(-)

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



^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2019-07-31 17:13 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-29  9:04 [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Tony Nguyen
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 02/12] ice: Account for all states of FW DCBx and LLDP Tony Nguyen
2019-07-31 17:08   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 03/12] ice: Don't call synchronize_irq() for VF's from the host Tony Nguyen
2019-07-31 17:08   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 04/12] ice: Treat DCBx state NOT_STARTED as valid Tony Nguyen
2019-07-31 17:09   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 05/12] ice: Fix RSS LUT table when setting Rx channels Tony Nguyen
2019-07-31 17:10   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 06/12] ice: Copy dcbx configuration only if mode is correct Tony Nguyen
2019-07-31 17:10   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 07/12] ice: reject VF attempts to enable head writeback Tony Nguyen
2019-07-31 17:11   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 08/12] ice: Rename ethtool private flag for lldp Tony Nguyen
2019-07-31 17:11   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 09/12] ice: silence some bogus error messages Tony Nguyen
2019-07-31 17:12   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 10/12] ice: Fix flag used for module query Tony Nguyen
2019-07-31 17:12   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 11/12] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() Tony Nguyen
2019-07-31 17:13   ` Bowers, AndrewX
2019-07-29  9:04 ` [Intel-wired-lan] [PATCH S24 v2 12/12] ice: Add input handlers for virtual channel handlers Tony Nguyen
2019-07-31 17:13   ` Bowers, AndrewX
2019-07-31 17:07 ` [Intel-wired-lan] [PATCH S24 v2 01/12] ice: Allow egress control packets from PF_VSI Bowers, AndrewX

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.