|
|
Log in / Subscribe / Register

selftests: Add selftest for link layer and performance testing

From:  Mohan Prasad J <mohan.prasad-AT-microchip.com>
To:  <netdev-AT-vger.kernel.org>, <davem-AT-davemloft.net>, <kuba-AT-kernel.org>, <andrew-AT-lunn.ch>
Subject:  [PATCH net-next v4 0/3] selftests: Add selftest for link layer and performance testing
Date:  Fri, 15 Nov 2024 00:55:17 +0530
Message-ID:  <20241114192545.1742514-1-mohan.prasad@microchip.com>
Cc:  <edumazet-AT-google.com>, <pabeni-AT-redhat.com>, <shuah-AT-kernel.org>, <mohan.prasad-AT-microchip.com>, <linux-kernel-AT-vger.kernel.org>, <linux-kselftest-AT-vger.kernel.org>, <horms-AT-kernel.org>, <brett.creeley-AT-amd.com>, <rosenp-AT-gmail.com>, <UNGLinuxDriver-AT-microchip.com>, <willemb-AT-google.com>, <petrm-AT-nvidia.com>
Archive-link:  Article

The series of patches are for doing basic tests
of NIC driver. Test comprises checks for auto-negotiation,
speed, duplex state and throughput between local NIC and
partner. Tools such as ethtool, iperf3 are used.

Signed-off-by: Mohan Prasad J <mohan.prasad@microchip.com>
---
Changes in v4:
- Type hints are added for arguments and return types.
- Test values can be modified through command line.
- Minor code improvements.
- GenerateTraffic class extended for throughput test.
- Protocol testcases separated.

Changes in v3:
Link to v3: https://patchwork.kernel.org/project/netdevbpf/cover/2024...
- LinkConfig class is included in the hw library. This contains
  generic APIs for doing link layer operations.
- Auto-negotiation checks involve changing the auto-neg state
  both in local and partner NIC.
- Link layer test and performance test are separated to 
  different selftest files.
- Resetting of NIC driver done after test completion.

Changes in v2:
Link to v2: https://patchwork.kernel.org/project/netdevbpf/cover/2024...
- Changed the hardcoded implementation of speed, duplex states,
  throughput to generic values, in order to support all type
  of NIC drivers.
- Test executes based on the supported link modes between local
  NIC driver and partner.
- Instead of lan743x directory, selftest file is now relocated 
  to /selftests/drivers/net/hw.
Link to v1: https://patchwork.kernel.org/project/netdevbpf/cover/2024...
---
Mohan Prasad J (3):
  selftests: nic_link_layer: Add link layer selftest for NIC driver
  selftests: nic_link_layer: Add selftest case for speed and duplex
    states
  selftests: nic_performance: Add selftest for performance of NIC driver

 .../testing/selftests/drivers/net/hw/Makefile |   6 +-
 .../drivers/net/hw/lib/py/__init__.py         |   1 +
 .../drivers/net/hw/lib/py/linkconfig.py       | 222 ++++++++++++++++++
 .../drivers/net/hw/nic_link_layer.py          | 113 +++++++++
 .../drivers/net/hw/nic_performance.py         | 137 +++++++++++
 .../selftests/drivers/net/lib/py/load.py      |  20 +-
 6 files changed, 496 insertions(+), 3 deletions(-)
 create mode 100644 tools/testing/selftests/drivers/net/hw/lib/py/linkconfig.py
 create mode 100644 tools/testing/selftests/drivers/net/hw/nic_link_layer.py
 create mode 100644 tools/testing/selftests/drivers/net/hw/nic_performance.py

-- 
2.43.0




Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds