[dpdk-dev] [PATCH v2 1/2] net/bnxt: fix the check for validating link speed

2020-05-22 Thread Kalesh A P
From: Kalesh AP bnxt PMD uses the macro BNXT_SUPPORTED_SPEEDS to validate the user requested speed. But this has all the speed values supported by the PMD and is not chip specific. The check against this macro returns success when the user tries set the speed to 100G on a port even if the chip d

[dpdk-dev] [PATCH 0/7] bnxt patchset with bug fixes

2020-02-06 Thread Kalesh A P
From: Kalesh AP Please apply. Kalesh AP (5): net/bnxt: avoid an unnecessary delay in port stop net/bnxt: log firmware debug notifications net/bnxt: register for debug notification async event from fw net/bnxt: fix to call port stop when error recovery fails net/bnxt: move locally used

[dpdk-dev] [PATCH 6/7] net/bnxt: move locally used functions to static

2020-02-06 Thread Kalesh A P
From: Kalesh AP bnxt_rss_ctxts() function is declared in header file bnxt.h, implemented in bnxt_ethdev.c, and called only in bnxt_ethdev.c. Also many functions are declared in header file bnxt_hwrm.h, implemented in bnxt_hwrm.c, and called only in bnxt_hwrm.c. This patch moves these function d

[dpdk-dev] [PATCH 2/7] net/bnxt: fix default timeout for ver_get command

2020-02-06 Thread Kalesh A P
From: Rahul Gupta Initially when driver is loading, there is no HWRM timeout configured by FW, the VER_GET command needs use default timeout as 500ms and while recovering from fatal/non-fatal FW error, it should use timeout as 50ms. Fixes: 458f0360e8dc ("net/bnxt: get default HWRM command timeou

[dpdk-dev] [PATCH 1/7] net/bnxt: avoid an unnecessary delay in port stop

2020-02-06 Thread Kalesh A P
From: Kalesh AP VFs and multifunction PFs do not have the privilege to change link configuration. We force the physical link down as a part of device stop only for single physical function(SPF). This change also helps in eliminating the logs when a VF port is stopped: "Port 0: link state change

[dpdk-dev] [PATCH 5/7] net/bnxt: fix to call port stop when error recovery fails

2020-02-06 Thread Kalesh A P
From: Kalesh AP During live FW upgrade or error recovery, if restoring the filter settings fail after port start, driver invokes bnxt_uninit_resources() only. Fix it to invoke bnxt_dev_stop_op() first before calling bnxt_uninit_resources(). Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify asy

[dpdk-dev] [PATCH 4/7] net/bnxt: register for debug notification async event from fw

2020-02-06 Thread Kalesh A P
From: Kalesh AP PF driver has to register for the debug notification async event with firmware in the HWRM_FUNC_DRV_RGTR command. Signed-off-by: Kalesh AP Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 3 +++ drivers/net/bnxt/bnxt_hwrm.h | 2 ++ 2 files changed, 5 inserti

[dpdk-dev] [PATCH 7/7] net/bnxt: fix buffer allocation reattempt logic

2020-02-06 Thread Kalesh A P
From: Santoshkumar Karanappa Rastapur In case of a buffer allocation failure, we reattempt buffer allocation before the rx handler exits. We were not attempting this when producer index is greater than the number of buffers to allocate. Fixed it with correct checks. Fixes: d9dd0b29ed31 ("net/bnx

[dpdk-dev] [PATCH 3/7] net/bnxt: log firmware debug notifications

2020-02-06 Thread Kalesh A P
From: Kalesh AP The debug notifications are not functional in nature, they should only have diagnostic value. Other than logging to system log, drivers shall not take any other functional action based on this async event. Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur Reviewed-by: Ajit Ku

[dpdk-dev] [PATCH 1/2] net/bnxt: fix segmentation fault handling async events on port stop

2020-02-19 Thread Kalesh A P
From: Kalesh AP Check for bp->hwrm_cmd_resp_addr before using it in HWRM_PREP to avoid segmentation fault when stop port and meanwhile receive events from FW. Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify async event from FW") Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Aji

[dpdk-dev] [PATCH 0/2] bnxt bug fixes

2020-02-19 Thread Kalesh A P
From: Kalesh AP These are couple of bnxt PMD bug fixes. Please apply. Kalesh AP (2): net/bnxt: fix segmentation fault handling async events on port stop net/bnxt: fix race when port is stopped and async events are received drivers/net/bnxt/bnxt_cpr.c | 6 ++ drivers/net/bnxt/bnxt_hwr

[dpdk-dev] [PATCH 2/2] net/bnxt: fix race when port is stopped and async events are received

2020-02-19 Thread Kalesh A P
From: Kalesh AP Fix a race condition between port stop and error recovery task. When io forwarding is not started on Stingray devices, driver will not receive the async event from FW when there is a FW reset. While exiting testpmd, as part of port stop driver sees this event and this in turn caus

[dpdk-dev] [PATCH] net/bnxt: fix to handle default mac address setting when port is stopped

2020-02-27 Thread Kalesh A P
From: Kalesh AP Driver destroys the vnic when the port is brought down. Port hw filter setting such as default mac address and unicast mac filters will be applied when port is started. Fixed to return success silently for these callbacks when port is stopped. Fixes: 39b88344e364 ("net/bnxt: fix

[dpdk-dev] [PATCH] net/bnxt: fix to cancel recovery alarm in port close

2020-02-28 Thread Kalesh A P
From: Kalesh AP There is a race condition when port is closed while error recovery is happening in driver. Fixed this by canceling the recovery threads during port close. Fixes: df6cd7c1f73a (net/bnxt: handle reset notify async event from FW) Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Review

[dpdk-dev] [PATCH v2] net/bnxt: fix to cancel recovery alarm in port close

2020-02-28 Thread Kalesh A P
From: Kalesh AP There is a race condition when port is closed while error recovery is happening in driver. Fixed this by canceling the recovery threads during port close. Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify async event from FW") Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Revi

[dpdk-dev] [PATCH] app/testpmd: show mac addresses added to a port

2019-11-25 Thread Kalesh A P
From: Kalesh AP Patch adds a runtime function to display the unicast and multicast MAC addresses added to a port. Syntax: show port (port_id) macs|mcast_macs Usage: testpmd> show port 0 macs Number of MAC address added: 1 B0:26:28:7F:F5:C1 testpmd> testpmd> show port 0 mcast_macs Numb

[dpdk-dev] [PATCH 1/3] net/bnxt: rework code to select chip type

2019-12-01 Thread Kalesh A P
From: Kalesh AP Use switch-case statement to replace if-else statement. Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur --- drivers/net/bnxt/bnxt_ethdev.c | 73 -- 1 file changed, 42 insertions(+), 31 deletions(-) diff --git a/drivers/net/bnxt/bnxt

[dpdk-dev] [PATCH 3/3] net/bnxt: use macro for getting default vnic

2019-12-01 Thread Kalesh A P
From: Kalesh AP BNXT_GET_DEFAULT_VNIC macro returns the default VNIC of the function and fixed all occurrences of code to use the macro. Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur --- drivers/net/bnxt/bnxt_ethdev.c | 18 +- 1 file changed, 9 insertions(+), 9 deletions

[dpdk-dev] [PATCH 0/3] updates for bnxt PMD

2019-12-01 Thread Kalesh A P
From: Kalesh AP This series contains code cleanup patches for bnxt PMD. Please apply. Kalesh AP (3): net/bnxt: rework code to select chip type net/bnxt: remove an unnecessary log net/bnxt: use macro for getting default vnic drivers/net/bnxt/bnxt_ethdev.c | 91 +++

[dpdk-dev] [PATCH 2/3] net/bnxt: remove an unnecessary log

2019-12-01 Thread Kalesh A P
From: Kalesh AP Remove an unnecessary log while deleting EM filters. Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur --- drivers/net/bnxt/bnxt_hwrm.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 4173008..b1f908e 10064

[dpdk-dev] [PATCH 0/6] bnxt patchset

2019-12-10 Thread Kalesh A P
From: Kalesh AP bnxt patchset with bug fixes and enhancements. Please apply. Kalesh AP (6): net/bnxt: restore mac filters during reset recovery net/bnxt: restore vlan filters during reset recovery net/bnxt: fix request for hot reset support net/bnxt: remove unnecessary macro for unused

[dpdk-dev] [PATCH 2/6] net/bnxt: restore vlan filters during reset recovery

2019-12-10 Thread Kalesh A P
From: Kalesh AP Older Firmware could have state information such as MAC Filters, VLAN settings etc configured by user. But new Firmware is unaware of this state information and as a result driver should restore these settings during reset recovery. This patch restores the user configured vlan se

[dpdk-dev] [PATCH 1/6] net/bnxt: restore mac filters during reset recovery

2019-12-10 Thread Kalesh A P
From: Kalesh AP Older Firmware could have state information such as MAC Filters, VLAN settings etc configured by user. But new Firmware is unaware of this state information and as a result driver should restore these settings during reset recovery. This patch restores the user configured mac add

[dpdk-dev] [PATCH 3/6] net/bnxt: fix request for hot reset support

2019-12-10 Thread Kalesh A P
From: Kalesh AP During the registration process, the drivers must publish "HOT_RESET_SUPPORTED" capability to the core firmware only if core firmware is capable of Hot Reset. Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify async event from FW") Signed-off-by: Kalesh AP Reviewed-by: Ajit Ku

[dpdk-dev] [PATCH 6/6] net/bnxt: add a field for fw capabilities

2019-12-10 Thread Kalesh A P
From: Kalesh AP The purpose of this patch is used to add a new field "fw_cap" in bnxt structure. The new "fw_cap" field store all the capabilities reported by the FW. This information will help us to determine the device capablities when registering feature support with FW. Signed-off-by: Kalesh

[dpdk-dev] [PATCH 5/6] net/bnxt: reset filter indices on free

2019-12-10 Thread Kalesh A P
From: Kalesh AP Fix bnxt_free_filter() to ensure that the filter indices are reset correctly when a filter is freed. This change helps in avoiding few duplicate code as well. Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur Reviewed-by: Ajit Kumar Khaparde --- drivers/net/bnxt/bnxt_ethde

[dpdk-dev] [PATCH 4/6] net/bnxt: remove unnecessary macro for unused variables

2019-12-10 Thread Kalesh A P
From: Kalesh AP Remove "__rte_unused" instances that are not required. Signed-off-by: Kalesh AP Reviewed-by: Rahul Gupta Reviewed-by: Somnath Kotur --- drivers/net/bnxt/bnxt_ethdev.c | 4 ++-- drivers/net/bnxt/bnxt_flow.c | 2 +- drivers/net/bnxt/bnxt_stats.c | 6 +++--- 3 files changed,

[dpdk-dev] [PATCH 1/5] net/bnxt: fix L4 checksum error indication in non-vector mode rx

2019-10-30 Thread Kalesh A P
From: Kalesh AP Update "mbuf->ol_flags" correctly for inner and ourter ip checksum errors in case of tunnel and non-tunnel packets. Fixes: 65ee636872eb ("net/bnxt: fix Rx checksum flags") Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur --- drivers/net/bnxt/bnxt_rxr.c

[dpdk-dev] [PATCH 0/5] bnxt patchset with bug fixes

2019-10-30 Thread Kalesh A P
From: Kalesh AP Please apply. Kalesh AP (3): net/bnxt: fix L4 checksum error indication in non-vector mode rx net/bnxt: fix a failure case during initialization net/bnxt: fix incorrect COS queue mapping Santoshkumar Karanappa Rastapur (1): net/bnxt: fix vnic allocation failure on port t

[dpdk-dev] [PATCH 3/5] net/bnxt: fix vnic allocation failure on port toggle

2019-10-30 Thread Kalesh A P
From: Santoshkumar Karanappa Rastapur bnxt_init_chip called on port start keeps incrementing rx_cosq_cnt. Hence more vnics are allocated with less number of rings on each port stop/start operation. Eventually vnic allocation fails due to incorrect ring group as no ring gets allocated to the vnic.

[dpdk-dev] [PATCH 2/5] net/bnxt: refactor vlan filtering code

2019-10-30 Thread Kalesh A P
From: Venkat Duvvuru This patch primarily does the following 1. Removes dflt flag inside bnxt_filter_info structure 2. Moves the redundant mac programming check from bnxt_mac_addr_add_op to bnxt_add_mac_filter 3. Uses bnxt_free_filter at all the relevant places Fixes: 6118503d8071 ("net/bnxt:

[dpdk-dev] [PATCH 4/5] net/bnxt: fix a failure case during initialization

2019-10-30 Thread Kalesh A P
From: Kalesh AP During initialization sequence in bnxt_alloc_mem() if bnxt_alloc_async_cp_ring() fails, driver invokes bnxt_free_mem() which in turn call bnxt_free_vnic_mem() which causes the error logs "bnxt_free_vnic_mem(): VNIC is not freed yet!". This is because vnic memory is allocated but n

[dpdk-dev] [PATCH 5/5] net/bnxt: fix incorrect COS queue mapping

2019-10-30 Thread Kalesh A P
From: Ajit Khaparde While issuing hwrm_queue_qportcfg command, we are setting the drv_qmap_cap bit which is causing the firmware to return incorrect COS queue mapping. This bit is not required when COS classification is enabled. Fixes: 698aa7e95325 ("net/bnxt: add code to determine the Tx COS qu

[dpdk-dev] [PATCH v2 0/5] bnxt patchset with bug fixes

2019-11-04 Thread Kalesh A P
From: Kalesh AP Please apply. Ajit Khaparde (1): net/bnxt: fix incorrect COS queue mapping Kalesh AP (2): net/bnxt: fix L4 checksum error indication in non-vector mode rx net/bnxt: fix a failure case during initialization Santoshkumar Karanappa Rastapur (1): net/bnxt: fix vnic allocati

[dpdk-dev] [PATCH v2 2/5] net/bnxt: fix redundant mac addr check

2019-11-04 Thread Kalesh A P
From: Venkat Duvvuru filter->mac_index is used to check, if a same mac is already programmed. Hence, filter->dflt member is not needed which is also used for mac addr redundancy check. This patch fixes it by moving mac_index based redundant check from bnxt_mac_addr_add_op to bnxt_add_mac_filter

[dpdk-dev] [PATCH v2 1/5] net/bnxt: fix L4 checksum error indication in non-vector mode rx

2019-11-04 Thread Kalesh A P
From: Kalesh AP Update "mbuf->ol_flags" correctly for inner and ourter ip checksum errors in case of tunnel and non-tunnel packets. Fixes: 65ee636872eb ("net/bnxt: fix Rx checksum flags") Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur --- drivers/net/bnxt/bnxt_rxr.c

[dpdk-dev] [PATCH v2 4/5] net/bnxt: fix a failure case during initialization

2019-11-04 Thread Kalesh A P
From: Kalesh AP During initialization sequence in bnxt_alloc_mem() if bnxt_alloc_async_cp_ring() fails, driver invokes bnxt_free_mem() which in turn call bnxt_free_vnic_mem() which causes the error logs "bnxt_free_vnic_mem(): VNIC is not freed yet!". This is because vnic memory is allocated but n

[dpdk-dev] [PATCH v2 3/5] net/bnxt: fix vnic allocation failure on port toggle

2019-11-04 Thread Kalesh A P
From: Santoshkumar Karanappa Rastapur bnxt_init_chip called on port start keeps incrementing rx_cosq_cnt. Hence more vnics are allocated with less number of rings on each port stop/start operation. Eventually vnic allocation fails due to incorrect ring group as no ring gets allocated to the vnic.

[dpdk-dev] [PATCH v2 5/5] net/bnxt: fix incorrect COS queue mapping

2019-11-04 Thread Kalesh A P
From: Ajit Khaparde While issuing hwrm_queue_qportcfg command, we are setting the drv_qmap_cap bit which is causing the firmware to return incorrect COS queue mapping. This bit is not required when COS classification is enabled. Fixes: 698aa7e95325 ("net/bnxt: add code to determine the Tx COS qu

[dpdk-dev] [PATCH] net/bnxt: fix FW version log

2021-01-17 Thread Kalesh A P
From: Kalesh AP Driver is not logging the complete FW version along with HSI version. Fix it to indicate complete FW version string. Fixes: 9a891c1764ea ("net/bnxt: update HWRM to version 1.9.2") Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur Reviewed-by: Ajit Kumar K

[dpdk-dev] [RFC V2 0/3] librte_ethdev: error recovery support

2020-09-29 Thread Kalesh A P
From: Kalesh AP The error recovery solution is a protocol implemented between firmware and bnxt PMD to recover from the fatal errors without a system reboot. There is an alarm thread which constantly monitors the health of the firmware and initiates a recovery when needed. There are two scenario

[dpdk-dev] [RFC V2 2/3] net/bnxt: notify applications about device reset/recovery

2020-09-29 Thread Kalesh A P
From: Kalesh AP When the driver receives RESET_NOTIFY async event from FW or detected an error condition, it should update the application that FW is going to reset. Once the driver recoveres from the reset, update the reset recovery status to application as well. The recovery process is transpa

[dpdk-dev] [RFC V2 1/3] ethdev: support device reset and recovery events

2020-09-29 Thread Kalesh A P
From: Kalesh AP Adding support for device reset and recovery events in the rte_eth_event framework. FW error and FW reset conditions would be managed internally by PMD without needing application intervention. In such cases, PMD would need reset/recovery events to notify application that PMD is u

[dpdk-dev] [RFC V2 3/3] app/testpmd: handle device recovery event

2020-09-29 Thread Kalesh A P
From: Kalesh AP Added code to handle device reset and recovery event in testpmd. This is an indication from the PMD that device has resetted and recovered error condition. Signed-off-by: Kalesh AP Reviewed-by: Ajit Kumar Khaparde --- app/test-pmd/testpmd.c | 6 +- 1 file changed, 5 insert

[dpdk-dev] [RFC PATCH v2 0/3] librte_ethdev: error recovery support

2020-09-29 Thread Kalesh A P
From: Kalesh AP The error recovery solution is a protocol implemented between firmware and bnxt PMD to recover from the fatal errors without a system reboot. There is an alarm thread which constantly monitors the health of the firmware and initiates a recovery when needed. There are two scenario

[dpdk-dev] [RFC PATCH v2 1/3] ethdev: support device reset and recovery events

2020-09-29 Thread Kalesh A P
From: Kalesh AP Adding support for device reset and recovery events in the rte_eth_event framework. FW error and FW reset conditions would be managed internally by PMD without needing application intervention. In such cases, PMD would need reset/recovery events to notify application that PMD is u

[dpdk-dev] [RFC PATCH v2 2/3] net/bnxt: notify applications about device reset/recovery

2020-09-29 Thread Kalesh A P
From: Kalesh AP When the driver receives RESET_NOTIFY async event from FW or detected an error condition, it should update the application that FW is going to reset. Once the driver recoveres from the reset, update the reset recovery status to application as well. The recovery process is transpa

[dpdk-dev] [RFC PATCH v2 3/3] app/testpmd: handle device recovery event

2020-09-29 Thread Kalesh A P
From: Kalesh AP Added code to handle device reset and recovery event in testpmd. This is an indication from the PMD that device has resetted and recovered error condition. Signed-off-by: Kalesh AP Reviewed-by: Ajit Kumar Khaparde --- app/test-pmd/testpmd.c | 6 +- 1 file changed, 5 insert

[dpdk-dev] [RFC PATCH v3 0/3] librte_ethdev: error recovery support

2020-09-29 Thread Kalesh A P
From: Kalesh AP The error recovery solution is a protocol implemented between firmware and bnxt PMD to recover from the fatal errors without a system reboot. There is an alarm thread which constantly monitors the health of the firmware and initiates a recovery when needed. There are two scenario

[dpdk-dev] [RFC PATCH v3 2/3] net/bnxt: notify applications about device reset/recovery

2020-09-29 Thread Kalesh A P
From: Kalesh AP When the driver receives RESET_NOTIFY async event from FW or detected an error condition, it should update the application that FW is going to reset. Once the driver recoveres from the reset, update the reset recovery status to application as well. The recovery process is transpa

[dpdk-dev] [RFC PATCH v3 1/3] ethdev: support device reset and recovery events

2020-09-29 Thread Kalesh A P
From: Kalesh AP Adding support for device reset and recovery events in the rte_eth_event framework. FW error and FW reset conditions would be managed internally by PMD without needing application intervention. In such cases, PMD would need reset/recovery events to notify application that PMD is u

[dpdk-dev] [RFC PATCH v3 3/3] app/testpmd: handle device recovery event

2020-09-29 Thread Kalesh A P
From: Kalesh AP Added code to handle device reset and recovery event in testpmd. This is an indication from the PMD that device has reset and recovered error condition. Signed-off-by: Kalesh AP Reviewed-by: Ajit Kumar Khaparde --- app/test-pmd/testpmd.c | 6 +- 1 file changed, 5 insertion

[dpdk-dev] [RFC PATCH v4 0/3] librte_ethdev: error recovery support

2020-09-30 Thread Kalesh A P
From: Kalesh AP The error recovery solution is a protocol implemented between firmware and bnxt PMD to recover from the fatal errors without a system reboot. There is an alarm thread which constantly monitors the health of the firmware and initiates a recovery when needed. There are two scenario

[dpdk-dev] [RFC PATCH v4 1/3] ethdev: support device reset and recovery events

2020-09-30 Thread Kalesh A P
From: Kalesh AP Adding support for device reset and recovery events in the rte_eth_event framework. FW error and FW reset conditions would be managed internally by PMD without needing application intervention. In such cases, PMD would need reset/recovery events to notify application that PMD is u

[dpdk-dev] [RFC PATCH v4 2/3] net/bnxt: notify applications about device reset/recovery

2020-09-30 Thread Kalesh A P
From: Kalesh AP When the driver receives RESET_NOTIFY async event from FW or detected an error condition, it should update the application that FW is going to reset. Once the driver recoveres from the reset, update the reset recovery status to application as well. The recovery process is transpa

[dpdk-dev] [RFC PATCH v4 3/3] app/testpmd: handle device recovery event

2020-09-30 Thread Kalesh A P
From: Kalesh AP Added code to handle device reset and recovery event in testpmd. This is an indication from the PMD that device has reset and recovered error condition. Signed-off-by: Kalesh AP Reviewed-by: Ajit Kumar Khaparde --- app/test-pmd/testpmd.c | 6 +- 1 file changed, 5 insertion

[dpdk-dev] [PATCH] net/bnxt: fix link update op

2020-10-06 Thread Kalesh A P
From: Kalesh AP 1. When port is stopped, we can forcibly set the link status for the device to down. 2. VFs and MH PFs do not have the privilege to bring the link down. As a result driver prints "Link Up" when port is stopped. 3. When driver receives link status/speed/config async event fro

[dpdk-dev] [PATCH v5 3/3] app/testpmd: handle device recovery event

2020-10-07 Thread Kalesh A P
From: Kalesh AP Added code to handle error recovery events in testpmd. This is an indication from the PMD that it is undergoing an error recovery and recovered from the error condition. Signed-off-by: Kalesh AP Signed-off-by: Somnath Kotur Reviewed-by: Ajit Kumar Khaparde --- app/test-pmd/te

[dpdk-dev] [PATCH v5 0/3] librte_ethdev: error recovery support

2020-10-07 Thread Kalesh A P
From: Kalesh AP The error recovery solution is a protocol implemented between firmware and bnxt PMD to recover from the fatal errors without a system reboot. There is an alarm thread which constantly monitors the health of the firmware and initiates a recovery when needed. There are two scenario

[dpdk-dev] [PATCH v5 2/3] net/bnxt: notify applications about device reset/recovery

2020-10-07 Thread Kalesh A P
From: Kalesh AP When the driver receives RESET_NOTIFY async event from FW or detected an error condition, it should update the application that FW is going to reset. Once the driver recoveres from the reset, update the reset recovery status to application as well. The recovery process is transpa

[dpdk-dev] [PATCH v5 1/3] ethdev: support device reset and recovery events

2020-10-07 Thread Kalesh A P
From: Kalesh AP Adding support for device reset and recovery events in the rte_eth_event framework. FW error and FW reset conditions would be managed internally by PMD without needing application intervention. In such cases, PMD would need reset/recovery events to notify application that PMD is u

[dpdk-dev] [PATCH v6 0/3] librte_ethdev: error recovery support

2020-10-08 Thread Kalesh A P
From: Kalesh AP The error recovery solution is a protocol implemented between firmware and bnxt PMD to recover from the fatal errors without a system reboot. There is an alarm thread which constantly monitors the health of the firmware and initiates a recovery when needed. There are two scenario

[dpdk-dev] [PATCH v6 3/3] app/testpmd: handle device recovery event

2020-10-08 Thread Kalesh A P
From: Kalesh AP Added code to handle error recovery events in testpmd. This is an indication from the PMD that it is undergoing an error recovery and recovered from the error condition. Updated 20.11 release notes as well. Signed-off-by: Kalesh AP Signed-off-by: Somnath Kotur Reviewed-by: Aji

[dpdk-dev] [PATCH v6 1/3] ethdev: support device reset and recovery events

2020-10-08 Thread Kalesh A P
From: Kalesh AP Adding support for device reset and recovery events in the rte_eth_event framework. FW error and FW reset conditions would be managed internally by PMD without needing application intervention. In such cases, PMD would need reset/recovery events to notify application that PMD is u

[dpdk-dev] [PATCH v6 2/3] net/bnxt: notify applications about device reset/recovery

2020-10-08 Thread Kalesh A P
From: Kalesh AP When the driver receives RESET_NOTIFY async event from FW or detected an error condition, it should update the application that FW is going to reset. Once the driver recoveres from the reset, update the reset recovery status to application as well. The recovery process is transpa

[dpdk-dev] [PATCH] net/bnxt: fix UDP tunnel port remove

2020-10-12 Thread Kalesh A P
From: Kalesh AP The HWRM supports only one global destination port for a tunnel type. When port is stopped, driver deletes the UDP tunnel port configured in the HW, but it does not update the counter which causes the tunnel port addition to fail after port is started again. Fixed to update the

[dpdk-dev] [PATCH 1/6] net/bnxt: fix endianness while setting L4 destination port

2020-08-27 Thread Kalesh A P
From: Kalesh AP Use "req.tunnel_dst_port_val" in bnxt_hwrm_tunnel_dst_port_alloc() as big endian since hwrm spec mandates this field in network byte order. Also, fixed the endianness while parsing the command output. Fixes: 10d074b2022d ("net/bnxt: support tunneling") Cc: sta...@dpdk.org Signe

[dpdk-dev] [PATCH 0/6] bnxt bug fixes

2020-08-27 Thread Kalesh A P
From: Kalesh AP This patchset contains bnxt bug fixes. Kalesh AP (5): net/bnxt: fix endianness while setting L4 destination port net/bnxt: fix to initialize structure variable net/bnxt: fix a possible segfault in vector mode Tx path net/bnxt: fix L2 filter alloc net/bnxt: fix speed set

[dpdk-dev] [PATCH 5/6] net/bnxt: fix L2 filter alloc

2020-08-27 Thread Kalesh A P
From: Kalesh AP DPDK does not support RoCE and XDP. The driver should set the bit 5:4 of the flag to 1 and set bit 6 of the flag in the HWRM_CFA_L2_FILTER_ALLOC command to disable RoCE and XDP features. This change will greatly reduce the CFA resource consumption. Fixes: f92735db1e4c ("net/bnxt

[dpdk-dev] [PATCH 2/6] net/bnxt: fix LRO configuration

2020-08-27 Thread Kalesh A P
From: Venkat Duvvuru The maximum number of TCP segments that can be aggregated & the maximum number of aggregations the VNIC supports are configured incorrectly during LRO configuration. This patch fixes these values. Fixes: b150a7e7ee66 ("net/bnxt: support LRO on Thor adapters") Cc: sta...@dpd

[dpdk-dev] [PATCH 6/6] net/bnxt: fix speed setting on BCM957508-N2100 adapters

2020-08-27 Thread Kalesh A P
From: Kalesh AP On BCM957508-N2100 adapters, FW will not allow any user other than BMC to shutdown the port. As a result, bnxt_get_hwrm_link_config() always returns link up. Because of this, driver will not update the new port configurations such as speed, autoneg during a port start. Fixed the

[dpdk-dev] [PATCH 3/6] net/bnxt: fix to initialize structure variable

2020-08-27 Thread Kalesh A P
From: Kalesh AP During port start if bnxt_alloc_all_hwrm_stat_ctxs() fails, in the cleanup path we do see errors like below: bnxt_hwrm_ring_free(): hwrm_ring_free cp failed. rc:2 bnxt_hwrm_ring_free(): hwrm_ring_free rx failed. rc:2 The reason for this is in bnxt_free_all_hwrm_rings(), the chec

[dpdk-dev] [PATCH 4/6] net/bnxt: fix a possible segfault in vector mode Tx path

2020-08-27 Thread Kalesh A P
From: Kalesh AP rte_pktmbuf_prefree_seg() can return NULL if the mbuf still has remaining references on it. Adding a NULL check to prevent segfault. Fixes: bc4a000f2f53 ("net/bnxt: implement SSE vector mode") Cc: sta...@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Lance Richardson Reviewed

<    1   2   3