linux/Documentation/networking/device_drivers/ethernet
Aleksandr Loktionov 07af482e64 i40e: add ability to reset VF for Tx and Rx MDD events
Implement "mdd-auto-reset-vf" priv-flag to handle Tx and Rx MDD events for VFs.
This flag is also used in other network adapters like ICE.

Usage:
- "on"  - The problematic VF will be automatically reset
	  if a malformed descriptor is detected.
- "off" - The problematic VF will be disabled.

In cases where a VF sends malformed packets classified as malicious, it can
cause the Tx queue to freeze, rendering it unusable for several minutes. When
an MDD event occurs, this new implementation allows for a graceful VF reset to
quickly restore operational state.

Currently, VF queues are disabled if an MDD event occurs. This patch adds the
ability to reset the VF if a Tx or Rx MDD event occurs. It also includes MDD
event logging throttling to avoid dmesg pollution and unifies the format of
Tx and Rx MDD messages.

Note: Standard message rate limiting functions like dev_info_ratelimited()
do not meet our requirements. Custom rate limiting is implemented,
please see the code for details.

Co-developed-by: Jan Sokolowski <jan.sokolowski@intel.com>
Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com>
Co-developed-by: Padraig J Connolly <padraig.j.connolly@intel.com>
Signed-off-by: Padraig J Connolly <padraig.j.connolly@intel.com>
Signed-off-by: Aleksandr Loktionov <aleksandr.loktionov@intel.com>
Reviewed-by: Michal Schmidt <mschmidt@redhat.com>
Tested-by: Rafal Romanowski <rafal.romanowski@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Link: https://patch.msgid.link/20250106221929.956999-13-anthony.l.nguyen@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-01-07 18:16:02 -08:00
..
3com Documentation: networking: correct spelling 2023-01-31 13:00:47 +01:00
altera
amazon net: ena: Add ENA Express metrics support 2024-09-12 18:01:17 -07:00
amd vfio/pds: Add Kconfig and documentation 2023-08-16 10:54:54 -06:00
aquantia Documentation: networking: correct spelling 2023-01-31 13:00:47 +01:00
chelsio
cirrus
davicom Documentation: Update paths of Samsung S3C machine files 2020-10-31 12:44:14 +01:00
dec eth: de4x5: remove support for Generic DECchip & DIGITAL EtherWORKS PCI/EISA 2022-05-23 11:43:51 +01:00
dlink
freescale dt-bindings: misc: fsl,qoriq-mc: convert to yaml format 2024-07-09 07:40:17 -06:00
google gve: update gve.rst 2023-08-06 08:34:37 +01:00
huawei
intel i40e: add ability to reset VF for Tx and Rx MDD events 2025-01-07 18:16:02 -08:00
marvell Documentation: octeontx2: Add Documentation for RVU representors 2024-11-13 11:57:12 +00:00
mellanox/mlx5 net/mlx5e: SHAMPO, Add no-split ethtool counters for header/data split 2024-09-12 20:50:30 -07:00
meta eth: fbnic: add RPC hardware statistics 2024-11-18 18:43:41 -08:00
microsoft hv_netvsc: Add a comment clarifying batching logic 2021-03-14 14:32:37 -07:00
neterion Documentation: Drop or replace remaining mentions of IA64 2023-09-11 08:13:18 +00:00
netronome Documentation: nfp: update documentation 2022-11-15 20:31:08 -08:00
pensando ionic: update documentation for XDP support 2024-03-20 21:05:15 -07:00
smsc
stmicro
ti Documentation: networking: correct spelling 2023-01-31 13:00:47 +01:00
toshiba
wangxun net: txgbe: Update support email address 2023-02-08 20:48:37 -08:00
index.rst eth: fbnic: Add devlink firmware version info 2024-09-10 12:00:19 +02:00