mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
selftests/tc-testing: Add support for ifb devices
Add support for ifb devices in tdc so that tests with the nsPlugin are able to use it when necessary. Acked-by: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: Victor Nogueira <victor@mojatatu.com> Link: https://patch.msgid.link/20260521150811.1896373-1-victor@mojatatu.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
1a1f055318
commit
4177fd4469
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
CONFIG_DUMMY=y
|
||||
CONFIG_VETH=y
|
||||
CONFIG_IFB=y
|
||||
|
||||
#
|
||||
# Core Netfilter Configuration
|
||||
|
|
|
|||
|
|
@ -120,6 +120,7 @@ class SubPlugin(TdcPlugin):
|
|||
dev0 = self.args.NAMES["DEV0"];
|
||||
dev1 = self.args.NAMES["DEV1"];
|
||||
dummy = self.args.NAMES["DUMMY"];
|
||||
ifb = self.args.NAMES['IFB']
|
||||
|
||||
if self.args.verbose:
|
||||
print('{}._nl_ns_create'.format(self.sub_class))
|
||||
|
|
@ -129,6 +130,7 @@ class SubPlugin(TdcPlugin):
|
|||
with IPRoute() as ip:
|
||||
ip.link('add', ifname=dev1, kind='veth', peer={'ifname': dev0, 'net_ns_fd':'/proc/1/ns/net'})
|
||||
ip.link('add', ifname=dummy, kind='dummy')
|
||||
ip.link('add', ifname=ifb, kind='ifb')
|
||||
ticks = 20
|
||||
while True:
|
||||
if ticks == 0:
|
||||
|
|
@ -136,8 +138,10 @@ class SubPlugin(TdcPlugin):
|
|||
try:
|
||||
dev1_idx = ip.link_lookup(ifname=dev1)[0]
|
||||
dummy_idx = ip.link_lookup(ifname=dummy)[0]
|
||||
ifb_idx = ip.link_lookup(ifname=ifb)[0]
|
||||
ip.link('set', index=dev1_idx, state='up')
|
||||
ip.link('set', index=dummy_idx, state='up')
|
||||
ip.link('set', index=ifb_idx, state='up')
|
||||
break
|
||||
except:
|
||||
time.sleep(0.1)
|
||||
|
|
@ -169,8 +173,11 @@ class SubPlugin(TdcPlugin):
|
|||
cmds.append(self._replace_keywords('link set $DEV1 netns {}'.format(ns)))
|
||||
cmds.append(self._replace_keywords('link add $DUMMY type dummy'.format(ns)))
|
||||
cmds.append(self._replace_keywords('link set $DUMMY netns {}'.format(ns)))
|
||||
cmds.append(self._replace_keywords('link add $IFB type ifb'))
|
||||
cmds.append(self._replace_keywords('link set $IFB netns {}'.format(ns)))
|
||||
cmds.append(self._replace_keywords('netns exec {} $IP link set $DEV1 up'.format(ns)))
|
||||
cmds.append(self._replace_keywords('netns exec {} $IP link set $DUMMY up'.format(ns)))
|
||||
cmds.append(self._replace_keywords('netns exec {} $IP link set $IFB up'.format(ns)))
|
||||
cmds.append(self._replace_keywords('link set $DEV0 up'.format(ns)))
|
||||
|
||||
if self.args.device:
|
||||
|
|
|
|||
|
|
@ -378,6 +378,7 @@ def run_one_test(pm, args, index, tidx):
|
|||
dev0 = NAMES['DEV0']
|
||||
dev1 = NAMES['DEV1']
|
||||
dummy = NAMES['DUMMY']
|
||||
ifb = NAMES['IFB']
|
||||
result = True
|
||||
tresult = ""
|
||||
tap = ""
|
||||
|
|
@ -414,6 +415,7 @@ def run_one_test(pm, args, index, tidx):
|
|||
NAMES['DEV0'] = '{}id{}'.format(NAMES['DEV0'], tidx['id'])
|
||||
NAMES['DEV1'] = '{}id{}'.format(NAMES['DEV1'], tidx['id'])
|
||||
NAMES['DUMMY'] = '{}id{}'.format(NAMES['DUMMY'], tidx['id'])
|
||||
NAMES['IFB'] = '{}id{}'.format(NAMES['IFB'], tidx['id'])
|
||||
|
||||
pm.call_pre_case(tidx)
|
||||
prepare_env(tidx, args, pm, 'setup', "-----> prepare stage", tidx["setup"])
|
||||
|
|
@ -474,6 +476,7 @@ def run_one_test(pm, args, index, tidx):
|
|||
NAMES['DEV0'] = dev0
|
||||
NAMES['DEV1'] = dev1
|
||||
NAMES['DUMMY'] = dummy
|
||||
NAMES['IFB'] = ifb
|
||||
|
||||
return res
|
||||
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ NAMES = {
|
|||
'DEV1': 'v0p1',
|
||||
'DEV2': '',
|
||||
'DUMMY': 'dummy1',
|
||||
'IFB': 'ifbtdc0',
|
||||
'ETHTOOL': '/usr/sbin/ethtool',
|
||||
'ETH': 'eth0',
|
||||
'BATCH_FILE': './batch.txt',
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user