All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] doc: update QEDE pmd nic guide
@ 2017-11-09  6:52 Rasesh Mody
  2017-11-09  6:52 ` [PATCH 2/2] net/qede: fix default config option Rasesh Mody
  2017-11-10  8:24 ` [PATCH 1/2] doc: update QEDE pmd nic guide Ferruh Yigit
  0 siblings, 2 replies; 11+ messages in thread
From: Rasesh Mody @ 2017-11-09  6:52 UTC (permalink / raw)
  To: dev, john.mcnamara; +Cc: Rasesh Mody, Dept-EngDPDKDev

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
---
 doc/guides/nics/qede.rst |   59 ++++++++++++++++++++++++++++++----------------
 1 file changed, 39 insertions(+), 20 deletions(-)

diff --git a/doc/guides/nics/qede.rst b/doc/guides/nics/qede.rst
index 09a10be..84becc9 100644
--- a/doc/guides/nics/qede.rst
+++ b/doc/guides/nics/qede.rst
@@ -1,5 +1,6 @@
 ..  BSD LICENSE
     Copyright (c) 2016 QLogic Corporation
+    Copyright (c) 2017 Cavium Inc.
     All rights reserved.
 
     Redistribution and use in source and binary forms, with or without
@@ -32,8 +33,7 @@ QEDE Poll Mode Driver
 ======================
 
 The QEDE poll mode driver library (**librte_pmd_qede**) implements support
-for **QLogic FastLinQ QL4xxxx 10G/25G/40G/50G/100G CNA** family of adapters as well
-as their virtual functions (VF) in SR-IOV context. It is supported on
+for **QLogic FastLinQ QL4xxxx 10G/25G/40G/50G/100G Intelligent Ethernet Adapters (IEA) and Converged Network Adapters (CNA)** family of adapters as well as SR-IOV virtual functions (VF). It is supported on
 several standard Linux distros like RHEL7.x, SLES12.x and Ubuntu.
 It is compile-tested under FreeBSD OS.
 
@@ -48,21 +48,22 @@ Supported Features
 - Allmulti mode
 - Port hardware statistics
 - Jumbo frames
-- VLAN offload - Filtering and stripping
-- Stateless checksum offloads (IPv4/TCP/UDP)
-- Multiple Rx/Tx queues
-- RSS (with RETA/hash table/key)
-- TSS
 - Multiple MAC address
-- Default pause flow control
-- SR-IOV VF
 - MTU change
+- Default pause flow control
 - Multiprocess aware
 - Scatter-Gather
-- VXLAN tunneling offload
-- N-tuple filter and flow director (limited support)
+- Multiple Rx/Tx queues
+- RSS (with RETA/hash table/key)
+- TSS
+- Stateless checksum offloads (IPv4/IPv6/TCP/UDP)
 - LRO/TSO
+- VLAN offload - Filtering and stripping
+- N-tuple filter and flow director (limited support)
 - NPAR (NIC Partitioning)
+- SR-IOV VF
+- VXLAN tunneling offload
+- MPLSoUDP Tx tunnel offload
 
 Non-supported Features
 ----------------------
@@ -73,18 +74,30 @@ Non-supported Features
 Supported QLogic Adapters
 -------------------------
 
-- QLogic FastLinQ QL4xxxx 10G/25G/40G/50G/100G CNAs.
+- QLogic FastLinQ QL4xxxx 10G/25G/40G/50G/100G Intelligent Ethernet Adapters (IEA) and Converged Network Adapters (CNA)
 
 Prerequisites
 -------------
 
-- Requires firmware version **8.18.x.** and management firmware
-  version **8.18.x or higher**. Firmware may be available
+- Requires storm firmware version **8.30.12.0**. Firmware may be available
   inbox in certain newer Linux distros under the standard directory
-  ``E.g. /lib/firmware/qed/qed_init_values-8.18.9.0.bin``
+  ``E.g. /lib/firmware/qed/qed_init_values-8.30.12.0.bin``
+  If the required firmware files are not available then download it from
+  `QLogic Driver Download Center <http://driverdownloads.qlogic.com/QLogicDriverDownloads_UI/DefaultNewSearch.aspx>`_.
+  For downloading firmware file, select adapter category, model and DPDK Poll Mode Driver.
+
+- Requires management firmware (MFW) version **8.30.x.x** or higher to be
+  flashed on to the adapter. If the required management firmware is not
+  available then download from
+  `QLogic Driver Download Center <http://driverdownloads.qlogic.com/QLogicDriverDownloads_UI/DefaultNewSearch.aspx>`_.
+  For downloading firmware upgrade utility, select adapter category, model and Linux distro.
+  To flash the management firmware refer to the instructions in the QLogic Firmware Upgrade Utility Readme document.
+
+- SR-IOV requires Linux PF driver version **8.20.x.x** or higher.
+  If the required PF driver is not available then download it from
+  `QLogic Driver Download Center <http://driverdownloads.qlogic.com/QLogicDriverDownloads_UI/DefaultNewSearch.aspx>`_.
+  For downloading PF driver, select adapter category, model and Linux distro.
 
-- If the required firmware files are not available then visit
-  `QLogic Driver Download Center <http://driverdownloads.qlogic.com>`_.
 
 Performance note
 ~~~~~~~~~~~~~~~~
@@ -117,12 +130,18 @@ enabling debugging options may affect system performance.
 
   Toggle display of receive fast path run-time messages.
 
+- ``CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH`` (default **"y"**)
+
+  A knob to control per-VF Tx switching feature.
+
 - ``CONFIG_RTE_LIBRTE_QEDE_FW`` (default **""**)
 
   Gives absolute path of firmware file.
-  ``Eg: "/lib/firmware/qed/qed_init_values_zipped-8.18.9.0.bin"``
+  ``Eg: "/lib/firmware/qed/qed_init_values-8.30.12.0.bin"``
   Empty string indicates driver will pick up the firmware file
-  from the default location.
+  from the default location /lib/firmware/qed.
+  CAUTION this option is more for custom firmware, it is not
+  recommended for use under normal condition.
 
 Driver compilation and testing
 ------------------------------
@@ -135,7 +154,7 @@ SR-IOV: Prerequisites and Sample Application Notes
 
 This section provides instructions to configure SR-IOV with Linux OS.
 
-**Note**: librte_pmd_qede will be used to bind to SR-IOV VF device and Linux native kernel driver (QEDE) will function as SR-IOV PF driver. Requires PF driver to be 8.10.x.x or higher.
+**Note**: librte_pmd_qede will be used to bind to SR-IOV VF device and Linux native kernel driver (qede) will function as SR-IOV PF driver. Requires PF driver to be 8.10.x.x or higher.
 
 #. Verify SR-IOV and ARI capability is enabled on the adapter using ``lspci``:
 
-- 
1.7.10.3

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

* [PATCH 2/2] net/qede: fix default config option
  2017-11-09  6:52 [PATCH 1/2] doc: update QEDE pmd nic guide Rasesh Mody
@ 2017-11-09  6:52 ` Rasesh Mody
  2017-11-09 22:48   ` Ferruh Yigit
  2017-11-10  8:24 ` [PATCH 1/2] doc: update QEDE pmd nic guide Ferruh Yigit
  1 sibling, 1 reply; 11+ messages in thread
From: Rasesh Mody @ 2017-11-09  6:52 UTC (permalink / raw)
  To: dev, thomas.monjalon, ferruh.yigit
  Cc: Harish Patil, Dept-EngDPDKDev, Rasesh Mody

From: Harish Patil <harish.patil@cavium.com>

Restore the default configuration as in previous releases and
add a debug msg.

Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")

Signed-off-by: Harish Patil <harish.patil@cavium.com>
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
---
 config/common_base             |    2 +-
 drivers/net/qede/qede_ethdev.c |    5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/config/common_base b/config/common_base
index 34f04a9..e74febe 100644
--- a/config/common_base
+++ b/config/common_base
@@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
 CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
 CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
 CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
-CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
+CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
 #Provides abs path/name of the firmware file.
 #Empty string denotes driver will use default firmware
 CONFIG_RTE_LIBRTE_QEDE_FW=""
diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index 8832145..6f5ba2a 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev *eth_dev, bool flg)
 	if (IS_VF(edev)) {
 		params.update_tx_switching_flg = 1;
 		params.tx_switching_flg = !flg;
+		DP_INFO(edev, "VF tx-switching is disabled\n");
 	}
 #endif
 	for_each_hwfn(edev, i) {
@@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev *eth_dev, bool flg)
 			break;
 		}
 	}
-	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" : "deactivated",
-			params.tx_switching_flg ? "enabled" : "disabled");
+	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
+
 	return rc;
 }
 
-- 
1.7.10.3

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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-09  6:52 ` [PATCH 2/2] net/qede: fix default config option Rasesh Mody
@ 2017-11-09 22:48   ` Ferruh Yigit
  2017-11-09 22:57     ` Patil, Harish
  0 siblings, 1 reply; 11+ messages in thread
From: Ferruh Yigit @ 2017-11-09 22:48 UTC (permalink / raw)
  To: Rasesh Mody, dev, thomas.monjalon; +Cc: Harish Patil, Dept-EngDPDKDev

On 11/8/2017 10:52 PM, Rasesh Mody wrote:
> From: Harish Patil <harish.patil@cavium.com>
> 
> Restore the default configuration as in previous releases and
> add a debug msg.

Is this reverting
"f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"

This will be same as code before f07aa795c92a , right? If so why not just remove
the config option for this release and add a dynamic runtime in next release?

I am not clear for both f07aa795c92a and this one fixing, and why should they be
included for rc3?

Thanks,
ferruh

> 
> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")
> 
> Signed-off-by: Harish Patil <harish.patil@cavium.com>
> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
> ---
>  config/common_base             |    2 +-
>  drivers/net/qede/qede_ethdev.c |    5 +++--
>  2 files changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/config/common_base b/config/common_base
> index 34f04a9..e74febe 100644
> --- a/config/common_base
> +++ b/config/common_base
> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>  #Provides abs path/name of the firmware file.
>  #Empty string denotes driver will use default firmware
>  CONFIG_RTE_LIBRTE_QEDE_FW=""
> diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
> index 8832145..6f5ba2a 100644
> --- a/drivers/net/qede/qede_ethdev.c
> +++ b/drivers/net/qede/qede_ethdev.c
> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev *eth_dev, bool flg)
>  	if (IS_VF(edev)) {
>  		params.update_tx_switching_flg = 1;
>  		params.tx_switching_flg = !flg;
> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>  	}
>  #endif
>  	for_each_hwfn(edev, i) {
> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev *eth_dev, bool flg)
>  			break;
>  		}
>  	}
> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" : "deactivated",
> -			params.tx_switching_flg ? "enabled" : "disabled");
> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
> +
>  	return rc;
>  }
>  
> 

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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-09 22:48   ` Ferruh Yigit
@ 2017-11-09 22:57     ` Patil, Harish
  2017-11-09 23:00       ` Patil, Harish
  0 siblings, 1 reply; 11+ messages in thread
From: Patil, Harish @ 2017-11-09 22:57 UTC (permalink / raw)
  To: Ferruh Yigit, Mody, Rasesh, dev, thomas.monjalon; +Cc: Dept-Eng DPDK Dev

-----Original Message-----
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thursday, November 9, 2017 at 3:48 PM
To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
<dev@dpdk.org>, "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
<Dept-EngDPDKDev@cavium.com>
Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option

>On 11/8/2017 10:52 PM, Rasesh Mody wrote:
>> From: Harish Patil <harish.patil@cavium.com>
>> 
>> Restore the default configuration as in previous releases and
>> add a debug msg.
>
>Is this reverting
>"f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
>
>This will be same as code before f07aa795c92a , right? If so why not just
>remove
>the config option for this release and add a dynamic runtime in next
>release?
>
>I am not clear for both f07aa795c92a and this one fixing, and why should
>they be
>included for rc3?
>
>Thanks,
>Ferruh

Hi Ferruh,
Some customers are interested in getting better performance with 64B sized
packets. For that, they would need to keep this config disabled.
But in all other cases, by default, we would like to keep Tx switching
enabled (at a reduced performance) as in previous releases.
As stated in other email with Thomas, we shall remove this compile-time
config option in next release and use runtime option instead.
But for 17.08 we need it to be enabled by default.
Thanks.

>
>> 
>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")
>> 
>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
>> ---
>>  config/common_base             |    2 +-
>>  drivers/net/qede/qede_ethdev.c |    5 +++--
>>  2 files changed, 4 insertions(+), 3 deletions(-)
>> 
>> diff --git a/config/common_base b/config/common_base
>> index 34f04a9..e74febe 100644
>> --- a/config/common_base
>> +++ b/config/common_base
>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>>  #Provides abs path/name of the firmware file.
>>  #Empty string denotes driver will use default firmware
>>  CONFIG_RTE_LIBRTE_QEDE_FW=""
>> diff --git a/drivers/net/qede/qede_ethdev.c
>>b/drivers/net/qede/qede_ethdev.c
>> index 8832145..6f5ba2a 100644
>> --- a/drivers/net/qede/qede_ethdev.c
>> +++ b/drivers/net/qede/qede_ethdev.c
>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
>>*eth_dev, bool flg)
>>  	if (IS_VF(edev)) {
>>  		params.update_tx_switching_flg = 1;
>>  		params.tx_switching_flg = !flg;
>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>>  	}
>>  #endif
>>  	for_each_hwfn(edev, i) {
>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
>>*eth_dev, bool flg)
>>  			break;
>>  		}
>>  	}
>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" :
>>"deactivated",
>> -			params.tx_switching_flg ? "enabled" : "disabled");
>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
>> +
>>  	return rc;
>>  }
>>  
>> 
>


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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-09 22:57     ` Patil, Harish
@ 2017-11-09 23:00       ` Patil, Harish
  2017-11-09 23:07         ` Ferruh Yigit
  0 siblings, 1 reply; 11+ messages in thread
From: Patil, Harish @ 2017-11-09 23:00 UTC (permalink / raw)
  To: Patil, Harish, Ferruh Yigit, Mody, Rasesh, dev, thomas.monjalon
  Cc: Dept-Eng DPDK Dev

-----Original Message-----
From: Harish Patil <Harish.Patil@cavium.com>
Date: Thursday, November 9, 2017 at 3:57 PM
To: Ferruh Yigit <ferruh.yigit@intel.com>, "Mody, Rasesh"
<Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
"thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option

>-----Original Message-----
>From: Ferruh Yigit <ferruh.yigit@intel.com>
>Date: Thursday, November 9, 2017 at 3:48 PM
>To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
><dev@dpdk.org>, "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
><Dept-EngDPDKDev@cavium.com>
>Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
>
>>On 11/8/2017 10:52 PM, Rasesh Mody wrote:
>>> From: Harish Patil <harish.patil@cavium.com>
>>> 
>>> Restore the default configuration as in previous releases and
>>> add a debug msg.
>>
>>Is this reverting
>>"f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
>>
>>This will be same as code before f07aa795c92a , right? If so why not just
>>remove
>>the config option for this release and add a dynamic runtime in next
>>release?
>>
>>I am not clear for both f07aa795c92a and this one fixing, and why should
>>they be
>>included for rc3?
>>
>>Thanks,
>>Ferruh
>
>Hi Ferruh,
>Some customers are interested in getting better performance with 64B sized
>packets. For that, they would need to keep this config disabled.
>But in all other cases, by default, we would like to keep Tx switching
>enabled (at a reduced performance) as in previous releases.
>As stated in other email with Thomas, we shall remove this compile-time
>config option in next release and use runtime option instead.
>But for 17.08 we need it to be enabled by default.
>Thanks.

Correction, I meant 17.11 release, not 17.08.
>
>>
>>> 
>>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")
>>> 
>>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
>>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
>>> ---
>>>  config/common_base             |    2 +-
>>>  drivers/net/qede/qede_ethdev.c |    5 +++--
>>>  2 files changed, 4 insertions(+), 3 deletions(-)
>>> 
>>> diff --git a/config/common_base b/config/common_base
>>> index 34f04a9..e74febe 100644
>>> --- a/config/common_base
>>> +++ b/config/common_base
>>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
>>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
>>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>>>  #Provides abs path/name of the firmware file.
>>>  #Empty string denotes driver will use default firmware
>>>  CONFIG_RTE_LIBRTE_QEDE_FW=""
>>> diff --git a/drivers/net/qede/qede_ethdev.c
>>>b/drivers/net/qede/qede_ethdev.c
>>> index 8832145..6f5ba2a 100644
>>> --- a/drivers/net/qede/qede_ethdev.c
>>> +++ b/drivers/net/qede/qede_ethdev.c
>>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
>>>*eth_dev, bool flg)
>>>  	if (IS_VF(edev)) {
>>>  		params.update_tx_switching_flg = 1;
>>>  		params.tx_switching_flg = !flg;
>>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>>>  	}
>>>  #endif
>>>  	for_each_hwfn(edev, i) {
>>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
>>>*eth_dev, bool flg)
>>>  			break;
>>>  		}
>>>  	}
>>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" :
>>>"deactivated",
>>> -			params.tx_switching_flg ? "enabled" : "disabled");
>>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
>>> +
>>>  	return rc;
>>>  }
>>>  
>>> 
>>
>


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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-09 23:00       ` Patil, Harish
@ 2017-11-09 23:07         ` Ferruh Yigit
  2017-11-09 23:16           ` Patil, Harish
  0 siblings, 1 reply; 11+ messages in thread
From: Ferruh Yigit @ 2017-11-09 23:07 UTC (permalink / raw)
  To: Patil, Harish, Mody, Rasesh, dev, thomas.monjalon; +Cc: Dept-Eng DPDK Dev

On 11/9/2017 3:00 PM, Patil, Harish wrote:
> -----Original Message-----
> From: Harish Patil <Harish.Patil@cavium.com>
> Date: Thursday, November 9, 2017 at 3:57 PM
> To: Ferruh Yigit <ferruh.yigit@intel.com>, "Mody, Rasesh"
> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
> 
>> -----Original Message-----
>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>> Date: Thursday, November 9, 2017 at 3:48 PM
>> To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
>> <dev@dpdk.org>, "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>> Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
>> <Dept-EngDPDKDev@cavium.com>
>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
>>
>>> On 11/8/2017 10:52 PM, Rasesh Mody wrote:
>>>> From: Harish Patil <harish.patil@cavium.com>
>>>>
>>>> Restore the default configuration as in previous releases and
>>>> add a debug msg.
>>>
>>> Is this reverting
>>> "f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
>>>
>>> This will be same as code before f07aa795c92a , right? If so why not just
>>> remove
>>> the config option for this release and add a dynamic runtime in next
>>> release?
>>>
>>> I am not clear for both f07aa795c92a and this one fixing, and why should
>>> they be
>>> included for rc3?
>>>
>>> Thanks,
>>> Ferruh
>>
>> Hi Ferruh,
>> Some customers are interested in getting better performance with 64B sized
>> packets. For that, they would need to keep this config disabled.
>> But in all other cases, by default, we would like to keep Tx switching
>> enabled (at a reduced performance) as in previous releases.
>> As stated in other email with Thomas, we shall remove this compile-time
>> config option in next release and use runtime option instead.
>> But for 17.08 we need it to be enabled by default.
>> Thanks.
> 
> Correction, I meant 17.11 release, not 17.08.

Other patch just sent two days ago, to introduce the config option as disabled
by default, so it was changing the behavior and accepted as a fix for rc3.

Now two days later, this patch enables it as a fix again, only difference for
two days ago becomes adding a config option?


>>
>>>
>>>>
>>>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")
>>>>
>>>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
>>>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
>>>> ---
>>>>  config/common_base             |    2 +-
>>>>  drivers/net/qede/qede_ethdev.c |    5 +++--
>>>>  2 files changed, 4 insertions(+), 3 deletions(-)
>>>>
>>>> diff --git a/config/common_base b/config/common_base
>>>> index 34f04a9..e74febe 100644
>>>> --- a/config/common_base
>>>> +++ b/config/common_base
>>>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
>>>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
>>>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>>>>  #Provides abs path/name of the firmware file.
>>>>  #Empty string denotes driver will use default firmware
>>>>  CONFIG_RTE_LIBRTE_QEDE_FW=""
>>>> diff --git a/drivers/net/qede/qede_ethdev.c
>>>> b/drivers/net/qede/qede_ethdev.c
>>>> index 8832145..6f5ba2a 100644
>>>> --- a/drivers/net/qede/qede_ethdev.c
>>>> +++ b/drivers/net/qede/qede_ethdev.c
>>>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
>>>> *eth_dev, bool flg)
>>>>  	if (IS_VF(edev)) {
>>>>  		params.update_tx_switching_flg = 1;
>>>>  		params.tx_switching_flg = !flg;
>>>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>>>>  	}
>>>>  #endif
>>>>  	for_each_hwfn(edev, i) {
>>>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
>>>> *eth_dev, bool flg)
>>>>  			break;
>>>>  		}
>>>>  	}
>>>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" :
>>>> "deactivated",
>>>> -			params.tx_switching_flg ? "enabled" : "disabled");
>>>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
>>>> +
>>>>  	return rc;
>>>>  }
>>>>  
>>>>
>>>
>>
> 

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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-09 23:07         ` Ferruh Yigit
@ 2017-11-09 23:16           ` Patil, Harish
  2017-11-10  1:07             ` Ferruh Yigit
  0 siblings, 1 reply; 11+ messages in thread
From: Patil, Harish @ 2017-11-09 23:16 UTC (permalink / raw)
  To: Ferruh Yigit, Mody, Rasesh, dev, thomas.monjalon; +Cc: Dept-Eng DPDK Dev

-----Original Message-----
From: Ferruh Yigit <ferruh.yigit@intel.com>
Date: Thursday, November 9, 2017 at 4:07 PM
To: Harish Patil <Harish.Patil@cavium.com>, "Mody, Rasesh"
<Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
"thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option

>On 11/9/2017 3:00 PM, Patil, Harish wrote:
>> -----Original Message-----
>> From: Harish Patil <Harish.Patil@cavium.com>
>> Date: Thursday, November 9, 2017 at 3:57 PM
>> To: Ferruh Yigit <ferruh.yigit@intel.com>, "Mody, Rasesh"
>> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
>> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
>> 
>>> -----Original Message-----
>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>> Date: Thursday, November 9, 2017 at 3:48 PM
>>> To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
>>> <dev@dpdk.org>, "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>>> Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
>>> <Dept-EngDPDKDev@cavium.com>
>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
>>>
>>>> On 11/8/2017 10:52 PM, Rasesh Mody wrote:
>>>>> From: Harish Patil <harish.patil@cavium.com>
>>>>>
>>>>> Restore the default configuration as in previous releases and
>>>>> add a debug msg.
>>>>
>>>> Is this reverting
>>>> "f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
>>>>
>>>> This will be same as code before f07aa795c92a , right? If so why not
>>>>just
>>>> remove
>>>> the config option for this release and add a dynamic runtime in next
>>>> release?
>>>>
>>>> I am not clear for both f07aa795c92a and this one fixing, and why
>>>>should
>>>> they be
>>>> included for rc3?
>>>>
>>>> Thanks,
>>>> Ferruh
>>>
>>> Hi Ferruh,
>>> Some customers are interested in getting better performance with 64B
>>>sized
>>> packets. For that, they would need to keep this config disabled.
>>> But in all other cases, by default, we would like to keep Tx switching
>>> enabled (at a reduced performance) as in previous releases.
>>> As stated in other email with Thomas, we shall remove this compile-time
>>> config option in next release and use runtime option instead.
>>> But for 17.08 we need it to be enabled by default.
>>> Thanks.
>> 
>> Correction, I meant 17.11 release, not 17.08.
>
>Other patch just sent two days ago, to introduce the config option as
>disabled
>by default, so it was changing the behavior and accepted as a fix for rc3.
>
>Now two days later, this patch enables it as a fix again, only difference
>for
>two days ago becomes adding a config option?
>

Hi Ferruh,
The patch sent two days ago with config option disabled was a mistake.
Yesterday we realized that it is not a desirable thing to keep the config
disabled since many customers would typically need Tx switching to be
enabled.
So the current patch we sent is just to change back the config option set
to enable from disable. Hence its a fix for the previous patch.
Thanks.
>>>
>>>>
>>>>>
>>>>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")
>>>>>
>>>>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
>>>>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
>>>>> ---
>>>>>  config/common_base             |    2 +-
>>>>>  drivers/net/qede/qede_ethdev.c |    5 +++--
>>>>>  2 files changed, 4 insertions(+), 3 deletions(-)
>>>>>
>>>>> diff --git a/config/common_base b/config/common_base
>>>>> index 34f04a9..e74febe 100644
>>>>> --- a/config/common_base
>>>>> +++ b/config/common_base
>>>>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
>>>>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
>>>>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>>>>>  #Provides abs path/name of the firmware file.
>>>>>  #Empty string denotes driver will use default firmware
>>>>>  CONFIG_RTE_LIBRTE_QEDE_FW=""
>>>>> diff --git a/drivers/net/qede/qede_ethdev.c
>>>>> b/drivers/net/qede/qede_ethdev.c
>>>>> index 8832145..6f5ba2a 100644
>>>>> --- a/drivers/net/qede/qede_ethdev.c
>>>>> +++ b/drivers/net/qede/qede_ethdev.c
>>>>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
>>>>> *eth_dev, bool flg)
>>>>>  	if (IS_VF(edev)) {
>>>>>  		params.update_tx_switching_flg = 1;
>>>>>  		params.tx_switching_flg = !flg;
>>>>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>>>>>  	}
>>>>>  #endif
>>>>>  	for_each_hwfn(edev, i) {
>>>>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
>>>>> *eth_dev, bool flg)
>>>>>  			break;
>>>>>  		}
>>>>>  	}
>>>>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" :
>>>>> "deactivated",
>>>>> -			params.tx_switching_flg ? "enabled" : "disabled");
>>>>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
>>>>> +
>>>>>  	return rc;
>>>>>  }
>>>>>  
>>>>>
>>>>
>>>
>> 
>


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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-09 23:16           ` Patil, Harish
@ 2017-11-10  1:07             ` Ferruh Yigit
  2017-11-10  1:53               ` Mody, Rasesh
  0 siblings, 1 reply; 11+ messages in thread
From: Ferruh Yigit @ 2017-11-10  1:07 UTC (permalink / raw)
  To: Patil, Harish, Mody, Rasesh, dev, thomas.monjalon; +Cc: Dept-Eng DPDK Dev

On 11/9/2017 3:16 PM, Patil, Harish wrote:
> -----Original Message-----
> From: Ferruh Yigit <ferruh.yigit@intel.com>
> Date: Thursday, November 9, 2017 at 4:07 PM
> To: Harish Patil <Harish.Patil@cavium.com>, "Mody, Rasesh"
> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
> 
>> On 11/9/2017 3:00 PM, Patil, Harish wrote:
>>> -----Original Message-----
>>> From: Harish Patil <Harish.Patil@cavium.com>
>>> Date: Thursday, November 9, 2017 at 3:57 PM
>>> To: Ferruh Yigit <ferruh.yigit@intel.com>, "Mody, Rasesh"
>>> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
>>> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>>> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
>>>
>>>> -----Original Message-----
>>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>>> Date: Thursday, November 9, 2017 at 3:48 PM
>>>> To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
>>>> <dev@dpdk.org>, "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>>>> Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
>>>> <Dept-EngDPDKDev@cavium.com>
>>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config option
>>>>
>>>>> On 11/8/2017 10:52 PM, Rasesh Mody wrote:
>>>>>> From: Harish Patil <harish.patil@cavium.com>
>>>>>>
>>>>>> Restore the default configuration as in previous releases and
>>>>>> add a debug msg.
>>>>>
>>>>> Is this reverting
>>>>> "f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
>>>>>
>>>>> This will be same as code before f07aa795c92a , right? If so why not
>>>>> just
>>>>> remove
>>>>> the config option for this release and add a dynamic runtime in next
>>>>> release?
>>>>>
>>>>> I am not clear for both f07aa795c92a and this one fixing, and why
>>>>> should
>>>>> they be
>>>>> included for rc3?
>>>>>
>>>>> Thanks,
>>>>> Ferruh
>>>>
>>>> Hi Ferruh,
>>>> Some customers are interested in getting better performance with 64B
>>>> sized
>>>> packets. For that, they would need to keep this config disabled.
>>>> But in all other cases, by default, we would like to keep Tx switching
>>>> enabled (at a reduced performance) as in previous releases.
>>>> As stated in other email with Thomas, we shall remove this compile-time
>>>> config option in next release and use runtime option instead.
>>>> But for 17.08 we need it to be enabled by default.
>>>> Thanks.
>>>
>>> Correction, I meant 17.11 release, not 17.08.
>>
>> Other patch just sent two days ago, to introduce the config option as
>> disabled
>> by default, so it was changing the behavior and accepted as a fix for rc3.
>>
>> Now two days later, this patch enables it as a fix again, only difference
>> for
>> two days ago becomes adding a config option?
>>
> 
> Hi Ferruh,
> The patch sent two days ago with config option disabled was a mistake.
> Yesterday we realized that it is not a desirable thing to keep the config
> disabled since many customers would typically need Tx switching to be
> enabled.

I am trying to say, if you want to revert back and turn to original code, why
not completely revert, removing config option too?

Specially taking into account that you will remove it next release already.

> So the current patch we sent is just to change back the config option set
> to enable from disable. Hence its a fix for the previous patch.

The cumulative output of both patches are adding a config option that doesn't
change code execution by default. Overall output is not a fix.
What do you think about a full revert of previous patch?

> Thanks.
>>>>
>>>>>
>>>>>>
>>>>>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching feature")
>>>>>>
>>>>>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
>>>>>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
>>>>>> ---
>>>>>>  config/common_base             |    2 +-
>>>>>>  drivers/net/qede/qede_ethdev.c |    5 +++--
>>>>>>  2 files changed, 4 insertions(+), 3 deletions(-)
>>>>>>
>>>>>> diff --git a/config/common_base b/config/common_base
>>>>>> index 34f04a9..e74febe 100644
>>>>>> --- a/config/common_base
>>>>>> +++ b/config/common_base
>>>>>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
>>>>>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
>>>>>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>>>>>>  #Provides abs path/name of the firmware file.
>>>>>>  #Empty string denotes driver will use default firmware
>>>>>>  CONFIG_RTE_LIBRTE_QEDE_FW=""
>>>>>> diff --git a/drivers/net/qede/qede_ethdev.c
>>>>>> b/drivers/net/qede/qede_ethdev.c
>>>>>> index 8832145..6f5ba2a 100644
>>>>>> --- a/drivers/net/qede/qede_ethdev.c
>>>>>> +++ b/drivers/net/qede/qede_ethdev.c
>>>>>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
>>>>>> *eth_dev, bool flg)
>>>>>>  	if (IS_VF(edev)) {
>>>>>>  		params.update_tx_switching_flg = 1;
>>>>>>  		params.tx_switching_flg = !flg;
>>>>>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>>>>>>  	}
>>>>>>  #endif
>>>>>>  	for_each_hwfn(edev, i) {
>>>>>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
>>>>>> *eth_dev, bool flg)
>>>>>>  			break;
>>>>>>  		}
>>>>>>  	}
>>>>>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ? "activated" :
>>>>>> "deactivated",
>>>>>> -			params.tx_switching_flg ? "enabled" : "disabled");
>>>>>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" : "deactivated");
>>>>>> +
>>>>>>  	return rc;
>>>>>>  }
>>>>>>  
>>>>>>
>>>>>
>>>>
>>>
>>
> 

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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-10  1:07             ` Ferruh Yigit
@ 2017-11-10  1:53               ` Mody, Rasesh
  2017-11-10  2:03                 ` Ferruh Yigit
  0 siblings, 1 reply; 11+ messages in thread
From: Mody, Rasesh @ 2017-11-10  1:53 UTC (permalink / raw)
  To: Ferruh Yigit, Patil, Harish, dev, thomas.monjalon; +Cc: Dept-Eng DPDK Dev

Hi Ferruh,

> From: Ferruh Yigit [mailto:ferruh.yigit@intel.com]
> Sent: Thursday, November 09, 2017 5:07 PM
> 
> On 11/9/2017 3:16 PM, Patil, Harish wrote:
> > -----Original Message-----
> > From: Ferruh Yigit <ferruh.yigit@intel.com>
> > Date: Thursday, November 9, 2017 at 4:07 PM
> > To: Harish Patil <Harish.Patil@cavium.com>, "Mody, Rasesh"
> > <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
> > "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
> > Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
> > Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config
> > option
> >
> >> On 11/9/2017 3:00 PM, Patil, Harish wrote:
> >>> -----Original Message-----
> >>> From: Harish Patil <Harish.Patil@cavium.com>
> >>> Date: Thursday, November 9, 2017 at 3:57 PM
> >>> To: Ferruh Yigit <ferruh.yigit@intel.com>, "Mody, Rasesh"
> >>> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
> >>> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
> >>> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
> >>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config
> >>> option
> >>>
> >>>> -----Original Message-----
> >>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
> >>>> Date: Thursday, November 9, 2017 at 3:48 PM
> >>>> To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
> >>>> <dev@dpdk.org>, "thomas.monjalon@6wind.com"
> >>>> <thomas.monjalon@6wind.com>
> >>>> Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
> >>>> <Dept-EngDPDKDev@cavium.com>
> >>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config
> >>>> option
> >>>>
> >>>>> On 11/8/2017 10:52 PM, Rasesh Mody wrote:
> >>>>>> From: Harish Patil <harish.patil@cavium.com>
> >>>>>>
> >>>>>> Restore the default configuration as in previous releases and add
> >>>>>> a debug msg.
> >>>>>
> >>>>> Is this reverting
> >>>>> "f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
> >>>>>
> >>>>> This will be same as code before f07aa795c92a , right? If so why
> >>>>> not just remove the config option for this release and add a
> >>>>> dynamic runtime in next release?
> >>>>>
> >>>>> I am not clear for both f07aa795c92a and this one fixing, and why
> >>>>> should they be included for rc3?
> >>>>>
> >>>>> Thanks,
> >>>>> Ferruh
> >>>>
> >>>> Hi Ferruh,
> >>>> Some customers are interested in getting better performance with
> >>>> 64B sized packets. For that, they would need to keep this config
> >>>> disabled.
> >>>> But in all other cases, by default, we would like to keep Tx
> >>>> switching enabled (at a reduced performance) as in previous releases.
> >>>> As stated in other email with Thomas, we shall remove this
> >>>> compile-time config option in next release and use runtime option
> instead.
> >>>> But for 17.08 we need it to be enabled by default.
> >>>> Thanks.
> >>>
> >>> Correction, I meant 17.11 release, not 17.08.
> >>
> >> Other patch just sent two days ago, to introduce the config option as
> >> disabled by default, so it was changing the behavior and accepted as
> >> a fix for rc3.
> >>
> >> Now two days later, this patch enables it as a fix again, only
> >> difference for two days ago becomes adding a config option?
> >>
> >
> > Hi Ferruh,
> > The patch sent two days ago with config option disabled was a mistake.
> > Yesterday we realized that it is not a desirable thing to keep the
> > config disabled since many customers would typically need Tx switching
> > to be enabled.
> 
> I am trying to say, if you want to revert back and turn to original code, why
> not completely revert, removing config option too?

We have an issue where we see low numbers with 64 byte frames and is seen when "per-VF Tx switching" feature is enabled (which is the default behavior without the config option). To get better performance with small sized frames, the fix is to disable the Tx switching feature. We need to have the config option as a hotfix as it provides a means to disable "per-VF Tx switching" feature and achieve better performance with small sized frames. In other words, it provides end user with an option to enable a feature or get better small packet performance.

We also need this config option to be picked in DPDK 17.08 stable, which exhibits same behavior.

Thanks!
-Rasesh

> 
> Specially taking into account that you will remove it next release already.
> 
> > So the current patch we sent is just to change back the config option
> > set to enable from disable. Hence its a fix for the previous patch.
> 
> The cumulative output of both patches are adding a config option that
> doesn't change code execution by default. Overall output is not a fix.
> What do you think about a full revert of previous patch?
> 
> > Thanks.
> >>>>
> >>>>>
> >>>>>>
> >>>>>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching
> >>>>>> feature")
> >>>>>>
> >>>>>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
> >>>>>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
> >>>>>> ---
> >>>>>>  config/common_base             |    2 +-
> >>>>>>  drivers/net/qede/qede_ethdev.c |    5 +++--
> >>>>>>  2 files changed, 4 insertions(+), 3 deletions(-)
> >>>>>>
> >>>>>> diff --git a/config/common_base b/config/common_base index
> >>>>>> 34f04a9..e74febe 100644
> >>>>>> --- a/config/common_base
> >>>>>> +++ b/config/common_base
> >>>>>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
> >>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
> >>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
> >>>>>> CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
> >>>>>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
> >>>>>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
> >>>>>>  #Provides abs path/name of the firmware file.
> >>>>>>  #Empty string denotes driver will use default firmware
> >>>>>> CONFIG_RTE_LIBRTE_QEDE_FW=""
> >>>>>> diff --git a/drivers/net/qede/qede_ethdev.c
> >>>>>> b/drivers/net/qede/qede_ethdev.c index 8832145..6f5ba2a 100644
> >>>>>> --- a/drivers/net/qede/qede_ethdev.c
> >>>>>> +++ b/drivers/net/qede/qede_ethdev.c
> >>>>>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
> >>>>>> *eth_dev, bool flg)
> >>>>>>  	if (IS_VF(edev)) {
> >>>>>>  		params.update_tx_switching_flg = 1;
> >>>>>>  		params.tx_switching_flg = !flg;
> >>>>>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
> >>>>>>  	}
> >>>>>>  #endif
> >>>>>>  	for_each_hwfn(edev, i) {
> >>>>>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
> >>>>>> *eth_dev, bool flg)
> >>>>>>  			break;
> >>>>>>  		}
> >>>>>>  	}
> >>>>>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ?
> "activated" :
> >>>>>> "deactivated",
> >>>>>> -			params.tx_switching_flg ? "enabled" :
> "disabled");
> >>>>>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" :
> >>>>>> +"deactivated");
> >>>>>> +
> >>>>>>  	return rc;
> >>>>>>  }
> >>>>>>
> >>>>>>
> >>>>>
> >>>>
> >>>
> >>
> >


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

* Re: [PATCH 2/2] net/qede: fix default config option
  2017-11-10  1:53               ` Mody, Rasesh
@ 2017-11-10  2:03                 ` Ferruh Yigit
  0 siblings, 0 replies; 11+ messages in thread
From: Ferruh Yigit @ 2017-11-10  2:03 UTC (permalink / raw)
  To: Mody, Rasesh, Patil, Harish, dev, thomas.monjalon
  Cc: Dept-Eng DPDK Dev, Yuanhan Liu

On 11/9/2017 5:53 PM, Mody, Rasesh wrote:
> Hi Ferruh,
> 
>> From: Ferruh Yigit [mailto:ferruh.yigit@intel.com]
>> Sent: Thursday, November 09, 2017 5:07 PM
>>
>> On 11/9/2017 3:16 PM, Patil, Harish wrote:
>>> -----Original Message-----
>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>> Date: Thursday, November 9, 2017 at 4:07 PM
>>> To: Harish Patil <Harish.Patil@cavium.com>, "Mody, Rasesh"
>>> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
>>> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>>> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config
>>> option
>>>
>>>> On 11/9/2017 3:00 PM, Patil, Harish wrote:
>>>>> -----Original Message-----
>>>>> From: Harish Patil <Harish.Patil@cavium.com>
>>>>> Date: Thursday, November 9, 2017 at 3:57 PM
>>>>> To: Ferruh Yigit <ferruh.yigit@intel.com>, "Mody, Rasesh"
>>>>> <Rasesh.Mody@cavium.com>, "dev@dpdk.org" <dev@dpdk.org>,
>>>>> "thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>
>>>>> Cc: Dept-Eng DPDK Dev <Dept-EngDPDKDev@cavium.com>
>>>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config
>>>>> option
>>>>>
>>>>>> -----Original Message-----
>>>>>> From: Ferruh Yigit <ferruh.yigit@intel.com>
>>>>>> Date: Thursday, November 9, 2017 at 3:48 PM
>>>>>> To: "Mody, Rasesh" <Rasesh.Mody@cavium.com>, "dev@dpdk.org"
>>>>>> <dev@dpdk.org>, "thomas.monjalon@6wind.com"
>>>>>> <thomas.monjalon@6wind.com>
>>>>>> Cc: Harish Patil <Harish.Patil@cavium.com>, Dept-Eng DPDK Dev
>>>>>> <Dept-EngDPDKDev@cavium.com>
>>>>>> Subject: Re: [dpdk-dev] [PATCH 2/2] net/qede: fix default config
>>>>>> option
>>>>>>
>>>>>>> On 11/8/2017 10:52 PM, Rasesh Mody wrote:
>>>>>>>> From: Harish Patil <harish.patil@cavium.com>
>>>>>>>>
>>>>>>>> Restore the default configuration as in previous releases and add
>>>>>>>> a debug msg.
>>>>>>>
>>>>>>> Is this reverting
>>>>>>> "f07aa795c92a ("net/qede: disable per-VF Tx switching feature")"
>>>>>>>
>>>>>>> This will be same as code before f07aa795c92a , right? If so why
>>>>>>> not just remove the config option for this release and add a
>>>>>>> dynamic runtime in next release?
>>>>>>>
>>>>>>> I am not clear for both f07aa795c92a and this one fixing, and why
>>>>>>> should they be included for rc3?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Ferruh
>>>>>>
>>>>>> Hi Ferruh,
>>>>>> Some customers are interested in getting better performance with
>>>>>> 64B sized packets. For that, they would need to keep this config
>>>>>> disabled.
>>>>>> But in all other cases, by default, we would like to keep Tx
>>>>>> switching enabled (at a reduced performance) as in previous releases.
>>>>>> As stated in other email with Thomas, we shall remove this
>>>>>> compile-time config option in next release and use runtime option
>> instead.
>>>>>> But for 17.08 we need it to be enabled by default.
>>>>>> Thanks.
>>>>>
>>>>> Correction, I meant 17.11 release, not 17.08.
>>>>
>>>> Other patch just sent two days ago, to introduce the config option as
>>>> disabled by default, so it was changing the behavior and accepted as
>>>> a fix for rc3.
>>>>
>>>> Now two days later, this patch enables it as a fix again, only
>>>> difference for two days ago becomes adding a config option?
>>>>
>>>
>>> Hi Ferruh,
>>> The patch sent two days ago with config option disabled was a mistake.
>>> Yesterday we realized that it is not a desirable thing to keep the
>>> config disabled since many customers would typically need Tx switching
>>> to be enabled.
>>
>> I am trying to say, if you want to revert back and turn to original code, why
>> not completely revert, removing config option too?
> 
> We have an issue where we see low numbers with 64 byte frames and is seen when "per-VF Tx switching" feature is enabled (which is the default behavior without the config option). To get better performance with small sized frames, the fix is to disable the Tx switching feature. We need to have the config option as a hotfix as it provides a means to disable "per-VF Tx switching" feature and achieve better performance with small sized frames. In other words, it provides end user with an option to enable a feature or get better small packet performance.

I got what you are doing, this is about how you did it, but ok to patch, I think
already late to discus more.

> We also need this config option to be picked in DPDK 17.08 stable, which exhibits same behavior.

Not sure if we backport new config options to stable trees? cc'ed Yuanhan.

> Thanks!
> -Rasesh
> 
>>
>> Specially taking into account that you will remove it next release already.
>>
>>> So the current patch we sent is just to change back the config option
>>> set to enable from disable. Hence its a fix for the previous patch.
>>
>> The cumulative output of both patches are adding a config option that
>> doesn't change code execution by default. Overall output is not a fix.
>> What do you think about a full revert of previous patch?
>>
>>> Thanks.
>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Fixes: f07aa795c92a ("net/qede: disable per-VF Tx switching
>>>>>>>> feature")
>>>>>>>>
>>>>>>>> Signed-off-by: Harish Patil <harish.patil@cavium.com>
>>>>>>>> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
>>>>>>>> ---
>>>>>>>>  config/common_base             |    2 +-
>>>>>>>>  drivers/net/qede/qede_ethdev.c |    5 +++--
>>>>>>>>  2 files changed, 4 insertions(+), 3 deletions(-)
>>>>>>>>
>>>>>>>> diff --git a/config/common_base b/config/common_base index
>>>>>>>> 34f04a9..e74febe 100644
>>>>>>>> --- a/config/common_base
>>>>>>>> +++ b/config/common_base
>>>>>>>> @@ -415,7 +415,7 @@ CONFIG_RTE_LIBRTE_QEDE_DEBUG_INFO=n
>>>>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_DRIVER=n
>>>>>>>>  CONFIG_RTE_LIBRTE_QEDE_DEBUG_TX=n
>>>>>>>> CONFIG_RTE_LIBRTE_QEDE_DEBUG_RX=n
>>>>>>>> -CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=n
>>>>>>>> +CONFIG_RTE_LIBRTE_QEDE_VF_TX_SWITCH=y
>>>>>>>>  #Provides abs path/name of the firmware file.
>>>>>>>>  #Empty string denotes driver will use default firmware
>>>>>>>> CONFIG_RTE_LIBRTE_QEDE_FW=""
>>>>>>>> diff --git a/drivers/net/qede/qede_ethdev.c
>>>>>>>> b/drivers/net/qede/qede_ethdev.c index 8832145..6f5ba2a 100644
>>>>>>>> --- a/drivers/net/qede/qede_ethdev.c
>>>>>>>> +++ b/drivers/net/qede/qede_ethdev.c
>>>>>>>> @@ -457,6 +457,7 @@ int qede_activate_vport(struct rte_eth_dev
>>>>>>>> *eth_dev, bool flg)
>>>>>>>>  	if (IS_VF(edev)) {
>>>>>>>>  		params.update_tx_switching_flg = 1;
>>>>>>>>  		params.tx_switching_flg = !flg;
>>>>>>>> +		DP_INFO(edev, "VF tx-switching is disabled\n");
>>>>>>>>  	}
>>>>>>>>  #endif
>>>>>>>>  	for_each_hwfn(edev, i) {
>>>>>>>> @@ -469,8 +470,8 @@ int qede_activate_vport(struct rte_eth_dev
>>>>>>>> *eth_dev, bool flg)
>>>>>>>>  			break;
>>>>>>>>  		}
>>>>>>>>  	}
>>>>>>>> -	DP_INFO(edev, "vport %s VF tx-switch %s\n", flg ?
>> "activated" :
>>>>>>>> "deactivated",
>>>>>>>> -			params.tx_switching_flg ? "enabled" :
>> "disabled");
>>>>>>>> +	DP_INFO(edev, "vport is %s\n", flg ? "activated" :
>>>>>>>> +"deactivated");
>>>>>>>> +
>>>>>>>>  	return rc;
>>>>>>>>  }
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
> 

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

* Re: [PATCH 1/2] doc: update QEDE pmd nic guide
  2017-11-09  6:52 [PATCH 1/2] doc: update QEDE pmd nic guide Rasesh Mody
  2017-11-09  6:52 ` [PATCH 2/2] net/qede: fix default config option Rasesh Mody
@ 2017-11-10  8:24 ` Ferruh Yigit
  1 sibling, 0 replies; 11+ messages in thread
From: Ferruh Yigit @ 2017-11-10  8:24 UTC (permalink / raw)
  To: Rasesh Mody, dev, john.mcnamara@intel.com thomas.monjalon; +Cc: Dept-EngDPDKDev

On 11/8/2017 10:52 PM, Rasesh Mody wrote:
> Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>

Series applied to dpdk/master, thanks.

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

end of thread, other threads:[~2017-11-10  8:24 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-09  6:52 [PATCH 1/2] doc: update QEDE pmd nic guide Rasesh Mody
2017-11-09  6:52 ` [PATCH 2/2] net/qede: fix default config option Rasesh Mody
2017-11-09 22:48   ` Ferruh Yigit
2017-11-09 22:57     ` Patil, Harish
2017-11-09 23:00       ` Patil, Harish
2017-11-09 23:07         ` Ferruh Yigit
2017-11-09 23:16           ` Patil, Harish
2017-11-10  1:07             ` Ferruh Yigit
2017-11-10  1:53               ` Mody, Rasesh
2017-11-10  2:03                 ` Ferruh Yigit
2017-11-10  8:24 ` [PATCH 1/2] doc: update QEDE pmd nic guide Ferruh Yigit

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.