This small series includes fixes for creation of veth pairs for networkless kernels & adds tests for turning the different network interface features on and off in selftests/net/netdevice.sh script. Changes in v4: Move veth creation/removal to the main shell script. Tested using vng on a networkless kernel and the script works, sample output below the changes. Changes in v3: https://lore.kernel.org/all/20240614113240.41550-1-jain.abhinav177@xxxxxxxxx/ Add a check for netdev, create veth pair for testing. Restore feature to its initial state. Changes in v2: https://lore.kernel.org/all/20240609132124.51683-1-jain.abhinav177@xxxxxxxxx/ Remove tail usage; use read to parse the features from temp file. v1: https://lore.kernel.org/all/20240606212714.27472-1-jain.abhinav177@xxxxxxxxx/ ``` # selftests: net: netdevice.sh # No valid network device found, creating veth pair # PASS: veth0: set interface up # PASS: veth0: set MAC address # SKIP: veth0: set IP address # PASS: veth0: ethtool list features # PASS: veth0: Turned off feature: rx-checksumming # PASS: veth0: Turned on feature: rx-checksumming # PASS: veth0: Restore feature rx-checksumming to initial state on # Actual changes: # tx-checksum-ip-generic: off # tx-tcp-segmentation: off [not requested] .... .... .... # PASS: veth1: Restore feature tx-nocache-copy to initial state off # PASS: veth1: Turned off feature: tx-vlan-stag-hw-insert # PASS: veth1: Turned on feature: tx-vlan-stag-hw-insert # PASS: veth1: Restore feature tx-vlan-stag-hw-insert to initial state on # PASS: veth1: Turned off feature: rx-vlan-stag-hw-parse # PASS: veth1: Turned on feature: rx-vlan-stag-hw-parse # PASS: veth1: Restore feature rx-vlan-stag-hw-parse to initial state on # PASS: veth1: Turned off feature: rx-gro-list # PASS: veth1: Turned on feature: rx-gro-list # PASS: veth1: Restore feature rx-gro-list to initial state off # PASS: veth1: Turned off feature: rx-udp-gro-forwarding # PASS: veth1: Turned on feature: rx-udp-gro-forwarding # PASS: veth1: Restore feature rx-udp-gro-forwarding to initial state off # Cannot get register dump: Operation not supported # SKIP: veth1: ethtool dump not supported # PASS: veth1: ethtool stats # PASS: veth1: stop interface # Removed veth pair ok 12 selftests: net: netdevice.sh ``` Abhinav Jain (2): selftests: net: Create veth pair for testing in networkless kernel selftests: net: Add on/off checks for non-fixed features of interface tools/testing/selftests/net/netdevice.sh | 55 +++++++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) -- 2.34.1