mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
selftests: net: py: add tc utility
Add a wrapper similar to existing ip, ethtool, ... commands. Tc takes a slightly different syntax. Account for that. The first user is the next patch in this series, converting so_txtime to drv-net. Pacing offload is supported by selected qdiscs only. Signed-off-by: Willem de Bruijn <willemb@google.com> Link: https://patch.msgid.link/20260504174056.565319-3-willemdebruijn.kernel@gmail.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
d9c1e7dc4a
commit
49bf9e5e7c
|
|
@ -23,7 +23,8 @@ try:
|
|||
NlError, RtnlFamily, DevlinkFamily, PSPFamily, Netlink
|
||||
from net.lib.py import CmdExitFailure
|
||||
from net.lib.py import bkg, cmd, bpftool, bpftrace, defer, ethtool, \
|
||||
fd_read_timeout, ip, rand_port, rand_ports, wait_port_listen, wait_file
|
||||
fd_read_timeout, ip, rand_port, rand_ports, tc, wait_port_listen, \
|
||||
wait_file
|
||||
from net.lib.py import bpf_map_set, bpf_map_dump, bpf_prog_map_ids
|
||||
from net.lib.py import KsftSkipEx, KsftFailEx, KsftXfailEx
|
||||
from net.lib.py import ksft_disruptive, ksft_exit, ksft_pr, ksft_run, \
|
||||
|
|
@ -36,7 +37,7 @@ try:
|
|||
"NlError", "RtnlFamily", "DevlinkFamily", "PSPFamily", "Netlink",
|
||||
"CmdExitFailure",
|
||||
"bkg", "cmd", "bpftool", "bpftrace", "defer", "ethtool",
|
||||
"fd_read_timeout", "ip", "rand_port", "rand_ports",
|
||||
"fd_read_timeout", "ip", "rand_port", "rand_ports", "tc",
|
||||
"wait_port_listen", "wait_file",
|
||||
"bpf_map_set", "bpf_map_dump", "bpf_prog_map_ids",
|
||||
"KsftSkipEx", "KsftFailEx", "KsftXfailEx",
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ from .netns import NetNS, NetNSEnter
|
|||
from .nsim import NetdevSim, NetdevSimDev
|
||||
from .utils import CmdExitFailure, fd_read_timeout, cmd, bkg, defer, \
|
||||
bpftool, ip, ethtool, bpftrace, rand_port, rand_ports, wait_port_listen, \
|
||||
wait_file, tool
|
||||
wait_file, tool, tc
|
||||
from .bpf import bpf_map_set, bpf_map_dump, bpf_prog_map_ids
|
||||
from .ynl import NlError, NlctrlFamily, YnlFamily, \
|
||||
EthtoolFamily, NetdevFamily, RtnlFamily, RtnlAddrFamily
|
||||
|
|
@ -29,7 +29,7 @@ __all__ = ["KSRC",
|
|||
"NetNS", "NetNSEnter",
|
||||
"CmdExitFailure", "fd_read_timeout", "cmd", "bkg", "defer",
|
||||
"bpftool", "ip", "ethtool", "bpftrace", "rand_port", "rand_ports",
|
||||
"wait_port_listen", "wait_file", "tool",
|
||||
"wait_port_listen", "wait_file", "tool", "tc",
|
||||
"bpf_map_set", "bpf_map_dump", "bpf_prog_map_ids",
|
||||
"NetdevSim", "NetdevSimDev",
|
||||
"NetshaperFamily", "DevlinkFamily", "PSPFamily", "NlError",
|
||||
|
|
|
|||
|
|
@ -239,7 +239,10 @@ class defer:
|
|||
def tool(name, args, json=None, ns=None, host=None):
|
||||
cmd_str = name + ' '
|
||||
if json:
|
||||
cmd_str += '--json '
|
||||
if name == 'tc':
|
||||
cmd_str += '-json '
|
||||
else:
|
||||
cmd_str += '--json '
|
||||
cmd_str += args
|
||||
cmd_obj = cmd(cmd_str, ns=ns, host=host)
|
||||
if json:
|
||||
|
|
@ -257,6 +260,13 @@ def ip(args, json=None, ns=None, host=None):
|
|||
return tool('ip', args, json=json, host=host)
|
||||
|
||||
|
||||
def tc(args, json=None, ns=None, host=None):
|
||||
""" Helper to call tc with standard set of optional args. """
|
||||
if ns:
|
||||
args = f'-netns {ns} ' + args
|
||||
return tool('tc', args, json=json, host=host)
|
||||
|
||||
|
||||
def ethtool(args, json=None, ns=None, host=None):
|
||||
return tool('ethtool', args, json=json, ns=ns, host=host)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user