All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jiri Pirko <jiri@resnulli.us>
To: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: netdev@vger.kernel.org, kuba@kernel.org, pabeni@redhat.com,
	davem@davemloft.net, edumazet@google.com,
	xiyou.wangcong@gmail.com, victor@mojatatu.com,
	pctammela@mojatatu.com, idosch@idosch.org, mleitner@redhat.com,
	vladbu@nvidia.com, paulb@nvidia.com
Subject: Re: [patch net-next] net: sched: move block device tracking into tcf_block_get/put_ext()
Date: Fri, 5 Jan 2024 12:24:13 +0100	[thread overview]
Message-ID: <ZZfm3TbhyAfIMzDQ@nanopsycho> (raw)
In-Reply-To: <CAM0EoMmCn8DpMzPCt9GMW16C08n8mfM8N==pfPJy6c=XgEqMSw@mail.gmail.com>

Thu, Jan 04, 2024 at 07:22:48PM CET, jhs@mojatatu.com wrote:
>On Thu, Jan 4, 2024 at 1:03 PM Jiri Pirko <jiri@resnulli.us> wrote:
>>
>> Thu, Jan 04, 2024 at 05:10:58PM CET, jhs@mojatatu.com wrote:
>> >On Thu, Jan 4, 2024 at 7:58 AM Jiri Pirko <jiri@resnulli.us> wrote:
>> >>
>> >> From: Jiri Pirko <jiri@nvidia.com>
>> >>
>> >> Inserting the device to block xarray in qdisc_create() is not suitable
>> >> place to do this. As it requires use of tcf_block() callback, it causes
>> >> multiple issues. It is called for all qdisc types, which is incorrect.
>> >>
>> >> So, instead, move it to more suitable place, which is tcf_block_get_ext()
>> >> and make sure it is only done for qdiscs that use block infrastructure
>> >> and also only for blocks which are shared.
>> >>
>> >> Symmetrically, alter the cleanup path, move the xarray entry removal
>> >> into tcf_block_put_ext().
>> >>
>> >> Fixes: 913b47d3424e ("net/sched: Introduce tc block netdev tracking infra")
>> >> Reported-by: Ido Schimmel <idosch@nvidia.com>
>> >> Closes: https://lore.kernel.org/all/ZY1hBb8GFwycfgvd@shredder/
>> >> Reported-by: Kui-Feng Lee <sinquersw@gmail.com>
>> >> Closes: https://lore.kernel.org/all/ce8d3e55-b8bc-409c-ace9-5cf1c4f7c88e@gmail.com/
>> >> Reported-and-tested-by: syzbot+84339b9e7330daae4d66@syzkaller.appspotmail.com
>> >> Closes: https://lore.kernel.org/all/0000000000007c85f5060dcc3a28@google.com/
>> >> Reported-and-tested-by: syzbot+806b0572c8d06b66b234@syzkaller.appspotmail.com
>> >> Closes: https://lore.kernel.org/all/00000000000082f2f2060dcc3a92@google.com/
>> >> Reported-and-tested-by: syzbot+0039110f932d438130f9@syzkaller.appspotmail.com
>> >> Closes: https://lore.kernel.org/all/0000000000007fbc8c060dcc3a5c@google.com/
>> >> Signed-off-by: Jiri Pirko <jiri@nvidia.com>
>> >
>> >Did you get a chance to run the tdc tests?
>>
>> I ran the TC ones we have in the net/forwarding directory.
>> I didn't manage to run the tdc. Readme didn't help me much.
>> How do you run the suite?
>
>For next time:
>make -C tools/testing/selftests TARGETS=tc-testing run_tests

Unrelated to this patch.

Running this, I'm getting lots of errors, some seem might be bugs in
tests. Here's the output:

make: Entering directory '/mnt/share156/jiri/net-next/tools/testing/selftests'
make[1]: Entering directory '/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing'
make[1]: Entering directory '/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing'
TAP version 13
1..1
# timeout set to 900
# selftests: tc-testing: tdc.sh
# netdevsim
# act_bpf
# act_connmark
# act_csum
# act_ct
# act_ctinfo
# act_gact
# act_gate
# act_mirred
# act_mpls
# act_nat
# act_pedit
# act_police
# act_sample
# act_simple
# act_skbedit
# act_skbmod
# act_tunnel_key
# act_vlan
# cls_basic
# cls_bpf
# cls_cgroup
# cls_flow
# cls_flower
# cls_fw
# cls_matchall
# cls_route
# cls_u32
# Module em_canid not found... skipping.
# em_cmp
# em_ipset
# em_ipt
# em_meta
# em_nbyte
# em_text
# em_u32
# sch_cake
# sch_cbs
# sch_choke
# sch_codel
# sch_drr
# sch_etf
# sch_ets
# sch_fq
# sch_fq_codel
# sch_fq_pie
# sch_gred
# sch_hfsc
# sch_hhf
# sch_htb
# sch_teql
# considering category actions
# !!! Consider installing pyroute2 !!!
#  -- ns/SubPlugin.__init__
#  -- scapy/SubPlugin.__init__
# Executing 528 tests in parallel and 15 in serial
# Using 18 batches and 4 workers
# 
# -----> prepare stage *** Could not execute: "$TC actions add action pass index 1"
# 
# -----> prepare stage *** Error message: "setting the network namespace "tcut-3101919570" failed: Invalid argument
# "
# 
# -----> prepare stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=19> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 420, in run_one_test
#     prepare_env(tidx, args, pm, 'setup', "-----> prepare stage", tidx["setup"])
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# RTNETLINK answers: File exists
# Command failed -:20
# 
# -----> teardown stage *** Could not execute: "$TC action flush action ctinfo"
# 
# -----> teardown stage *** Error message: "setting the network namespace "tcut-518092810" failed: Invalid argument
# "
# 
# -----> teardown stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=21> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 465, in run_one_test
#     prepare_env(tidx, args, pm, 'teardown', '-----> teardown stage', tidx['teardown'], procout)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# Error: argument "v0p0id8295idbf47" is wrong: "name" not a valid ifname
# 
# -----> prepare stage *** Could not execute: "$TC actions add action simple sdata "Rock""
# 
# -----> prepare stage *** Error message: "setting the network namespace "tcut-1996746596" failed: Invalid argument
# "
# 
# -----> prepare stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=15> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 420, in run_one_test
#     prepare_env(tidx, args, pm, 'setup', "-----> prepare stage", tidx["setup"])
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# ..RTNETLINK answers: File exists
# Command failed -:425
# Test 1c3a: Flush police actions
# Test 7326: Add police action with control continue
# Test 34fa: Add police action with control drop
# Test 8dd5: Add police action with control ok
# Test b9d1: Add police action with control reclassify
# Test c534: Add police action with control pipe
# Test b48b: Add police action with exceed goto chain control action
# Test 689e: Replace police action with invalid goto chain control
# Test cdd7: Add valid police action with packets per second rate limit
# Test f5bc: Add invalid police action with both bps and pps
# Test 7d64: Add police action with skip_hw option
# Test 7d50: Add skbmod action to set destination mac
# Test 9b29: Add skbmod action to set source mac
# Test 1724: Add skbmod action with invalid mac
# Test 3cf1: Add skbmod action with valid etype
# Test a749: Add skbmod action with invalid etype
# Test bfe6: Add skbmod action to swap mac
# Test 839b: Add skbmod action with control pipe
# Test c167: Add skbmod action with control reclassify
# Test 0c2f: Add skbmod action with control drop
# Test d113: Add skbmod action with control continue
# Test 7242: Add skbmod action with control pass
# Test 6046: Add skbmod action with control reclassify and cookie
# Test 58cb: List skbmod actions
# Test 9aa8: Get a single skbmod action from a list
# Test e93a: Delete an skbmod action
# Test 40c2: Flush skbmod actions
# Test b651: Replace skbmod action with invalid goto_chain control
# Test fe09: Add skbmod action to mark ECN bits
# Test 696a: Add simple ct action
# Test e38c: Add simple ct action with cookie
# Test 9f20: Add ct clear action
# Test 0bc1: Add ct clear action with cookie of max length
# Test 5bea: Try ct with zone
# Test d5d6: Try ct with zone, commit
# Test 029f: Try ct with zone, commit, mark
# Test a58d: Try ct with zone, commit, mark, nat
# Test 901b: Try ct with full nat ipv4 range syntax
# Test 072b: Try ct with full nat ipv6 syntax
# Test 3420: Try ct with full nat ipv6 range syntax
# Test 4470: Try ct with full nat ipv6 range syntax + force
# Test 5d88: Try ct with label
# Test 04d4: Try ct with label with mask
# Test 9751: Try ct with mark + mask
# Test 2faa: Try ct with mark + mask and cookie
# Test 3991: Add simple ct action with no_percpu flag
# Test 3992: Add ct action triggering DNAT tuple conflict
# 
# Sent 1 packets.
# 
# Sent 1 packets.
# Test 2029: Add xt action with log-prefix
# exception iproute2 exited with an error code in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test ac2a: List actions
# Test 3edf: Flush gact actions
# Test 63ec: Delete pass action
# returncode 255; expected [0]
# "-----> prepare stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('setup', None, '"-----> prepare stage" did not complete successfully') (caught in test_runner, running test 4 63ec Delete pass action stage setup)
# ---------------
# traceback
# ---------------
# ---------------
# Test 68e2: Add tunnel_key unset action
# exception iproute2 exited with an error code in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test fa1c: Add mpls dec_ttl action with ttl (invalid)
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test a5a7: Add pedit action with LAYERED_OP eth set src
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 5a31: Add vlan modify action for protocol 802.1AD
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 8eb5: Create valid ife encode action with tcindex and continue control
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test a874: Add invalid sample action without mandatory arguments
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test d959: Add cBPF action with valid bytecode
# Test f84a: Add cBPF action with invalid bytecode
# Test e939: Add eBPF action with valid object-file
# Test 282d: Add eBPF action with invalid object-file
# Test d819: Replace cBPF bytecode and action control
# Test 6ae3: Delete cBPF action 
# Test 3e0d: List cBPF actions
# Test 55ce: Flush BPF actions
# Test ccc3: Add cBPF action with duplicate index
# Test 89c7: Add cBPF action with invalid index
# Test 7ab9: Add cBPF action with cookie
# Test b8a1: Replace bpf action with invalid goto_chain control
# Test 2893: Add pedit action with RAW_OP offset u8 quad
# Test 6795: Add pedit action with LAYERED_OP ip6 set payload_len, nexthdr, hoplimit
# Test cfcc: Add pedit action with LAYERED_OP tcp flags set
# Test b078: Add simple action
# Test 4297: Add simple action with change command
# Test 6d4c: Add simple action with duplicate index
# Test 2542: List simple actions
# returncode 255; expected [0]
# "-----> prepare stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('setup', None, '"-----> prepare stage" did not complete successfully') (caught in test_runner, running test 5 2542 List simple actions stage setup)
# ---------------
# traceback
# ---------------
# ---------------
# Test 5232: List ctinfo actions
# Test 7702: Flush ctinfo actions
# Test 3201: Add ctinfo action with duplicate index
# Test 8295: Add ctinfo action with invalid index
# returncode 255; expected [0]
# "-----> teardown stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('teardown', 'setting the network namespace "tcut-518092810" failed: Invalid argument\n', '"-----> teardown stage" did not complete successfully') (caught in test_runner, running test 5 8295 Add ctinfo action with invalid index stage teardown)
# ---------------
# traceback
# ---------------
# accumulated output for this test:
# setting the network namespace "tcut-518092810" failed: Invalid argument
# 
# ---------------
# Test bf47: Add csum icmp action
# exception iproute2 exited with an error code in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# multiprocessing.pool.RemoteTraceback: 
# """
# Traceback (most recent call last):
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 142, in call_pre_case
#     pgn_inst.pre_case(caseinfo, test_skip)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 63, in pre_case
#     self.prepare_test(test)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 45, in prepare_test
#     self._proc_check()
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 219, in _proc_check
#     raise RuntimeError("iproute2 exited with an error code")
# RuntimeError: iproute2 exited with an error code
# 
# During handling of the above exception, another exception occurred:
# 
# Traceback (most recent call last):
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 125, in worker
#     result = (True, func(*args, **kwds))
#                     ^^^^^^^^^^^^^^^^^^^
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 48, in mapstar
#     return list(map(*args))
#            ^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 602, in __mp_runner
#     (_, tsr) = test_runner(mp_pm, mp_args, tests)
#                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 419, in run_one_test
#     pm.call_pre_case(tidx)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 146, in call_pre_case
#     print('test_ordinal is {}'.format(test_ordinal))
#                                       ^^^^^^^^^^^^
# NameError: name 'test_ordinal' is not defined
# """
# 
# The above exception was the direct cause of the following exception:
# 
# Traceback (most recent call last):
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 1028, in <module>
#     main()
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 1022, in main
#     set_operation_mode(pm, parser, args, remaining)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 964, in set_operation_mode
#     catresults = test_runner_mp(pm, args, alltests)
#                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 624, in test_runner_mp
#     pres = p.map(__mp_runner, batches)
#            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 367, in map
#     return self._map_async(func, iterable, mapstar, chunksize).get()
#            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 774, in get
#     raise self._value
# NameError: name 'test_ordinal' is not defined
# WARNING: Interface v0p0id7326 does not exist!
# WARNING: Interface v0p0id34fa does not exist!
# WARNING: more Interface v0p0id8dd5 does not exist!
# considering category qdisc
# !!! Consider installing pyroute2 !!!
#  -- ns/SubPlugin.__init__
#  -- scapy/SubPlugin.__init__
# Executing 294 tests in parallel and 33 in serial
# Using 11 batches and 4 workers
# 
# -----> prepare stage *** Could not execute: "echo "1 1 8" > /sys/bus/netdevsim/new_device"
# 
# -----> prepare stage *** Error message: "setting the network namespace "tcut-2202500200" failed: Invalid argument
# "
# 
# -----> prepare stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=15> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 420, in run_one_test
#     prepare_env(tidx, args, pm, 'setup', "-----> prepare stage", tidx["setup"])
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# RTNETLINK answers: File exists
# Command failed -:2
# 
# -----> teardown stage *** Could not execute: "$TC qdisc del dev $DUMMY handle 1: root"
# 
# -----> teardown stage *** Error message: "Error: Invalid handle.
# "
# 
# -----> teardown stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=21> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 465, in run_one_test
#     prepare_env(tidx, args, pm, 'teardown', '-----> teardown stage', tidx['teardown'], procout)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# 
# -----> teardown stage *** Could not execute: "$TC qdisc del dev $DUMMY handle 1: root bfifo"
# 
# -----> teardown stage *** Error message: "Cannot find device "dummy1ida519"
# "
# 
# -----> teardown stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=17> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 465, in run_one_test
#     prepare_env(tidx, args, pm, 'teardown', '-----> teardown stage', tidx['teardown'], procout)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# Error: argument "v0p0id20baid2958" is wrong: "name" not a valid ifname
# 
# -----> teardown stage *** Could not execute: "$TC qdisc del dev $DUMMY handle 1: root"
# 
# -----> teardown stage *** Error message: "setting the network namespace "tcut-2202500200-3305288203" failed: Invalid argument
# "
# 
# -----> teardown stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=15> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 465, in run_one_test
#     prepare_env(tidx, args, pm, 'teardown', '-----> teardown stage', tidx['teardown'], procout)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# 
# -----> prepare stage *** Could not execute: "$TC qdisc add dev $DUMMY handle 1: root choke limit 1000 bandwidth 10000"
# 
# -----> prepare stage *** Error message: "setting the network namespace "tcut-57801789-2243486144" failed: Invalid argument
# "
# 
# -----> prepare stage *** Aborting test run.
# 
# 
# <_io.BufferedReader name=6> *** stdout ***
# 
# 
# <_io.BufferedReader name=21> *** stderr ***
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 420, in run_one_test
#     prepare_env(tidx, args, pm, 'setup', "-----> prepare stage", tidx["setup"])
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 268, in prepare_env
#     raise PluginMgrTestFail(
# Error: argument "v0p0id30c4id0301" is wrong: "name" not a valid ifname
# RTNETLINK answers: File exists
# Command failed -:38
# Test a519: Add bfifo qdisc with system default parameters on egress
# exit: 1
# exit: 0
# Cannot find device "dummy1ida519"
# 
# returncode 1; expected [0]
# "-----> teardown stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('teardown', 'Cannot find device "dummy1ida519"\n', '"-----> teardown stage" did not complete successfully') (caught in test_runner, running test 2 a519 Add bfifo qdisc with system default parameters on egress stage teardown)
# ---------------
# traceback
# ---------------
# accumulated output for this test:
# Cannot find device "dummy1ida519"
# 
# ---------------
# Test 2385: Create CAKE with besteffort flag
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 0521: Show ingress class
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test b190: Create FQ_CODEL with noecn flag
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 5439: Create NETEM with multiple slot setting
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 30a9: Create SFB with increment setting
# exception [Errno 32] Broken pipe in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 20ba: Add multiq Qdisc to multi-queue device (8 queues)
# returncode 255; expected [0]
# "-----> prepare stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('setup', None, '"-----> prepare stage" did not complete successfully') (caught in test_runner, running test 2 20ba Add multiq Qdisc to multi-queue device (8 queues) stage setup)
# ---------------
# traceback
# ---------------
# ---------------
# Test 2958: Show skbprio class
# exit: 255
# exit: 0
# setting the network namespace "tcut-2202500200-3305288203" failed: Invalid argument
# 
# returncode 255; expected [0]
# "-----> teardown stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('teardown', 'setting the network namespace "tcut-2202500200-3305288203" failed: Invalid argument\n', '"-----> teardown stage" did not complete successfully') (caught in test_runner, running test 2 2958 Show skbprio class stage teardown)
# ---------------
# traceback
# ---------------
# accumulated output for this test:
# setting the network namespace "tcut-2202500200-3305288203" failed: Invalid argument
# 
# ---------------
# Test fe0f: Add prio qdisc on egress with 4 bands and priomap exceeding TC_PRIO_MAX entries
# Test 1f91: Add prio qdisc on egress with 4 bands and priomap's values exceeding bands number
# exit: 255
# exit: 1
# setting the network namespace "tcut-3396639522" failed: Invalid argument
# 
# Test d248: Add prio qdisc on egress with invalid bands value (< 2)
# exit: 1
# exit: 2
# Cannot find device "dummy1idd248"
# 
# Test 1d0e: Add prio qdisc on egress with invalid bands value exceeding TCQ_PRIO_BANDS
# Test 1971: Replace default prio qdisc on egress with 8 bands and new priomap
# exception iproute2 exited with an error code in call to pre_case for <class 'plugin-lib.nsPlugin.SubPlugin'> plugin
# Test 30c4: Add ETS qdisc with quanta + priomap
# exit: 1
# exit: 0
# Cannot find device "dummy1id30c4"
# 
# returncode 2; expected [0]
# "-----> teardown stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('teardown', 'Cannot find device "dummy1id30c4"\n', '"-----> teardown stage" did not complete successfully') (caught in test_runner, running test 2 30c4 Add ETS qdisc with quanta + priomap stage teardown)
# ---------------
# traceback
# ---------------
# accumulated output for this test:
# Cannot find device "dummy1id30c4"
# 
# ---------------
# Test 0301: Change CHOKE with limit setting
# returncode 255; expected [0]
# "-----> prepare stage" did not complete successfully
# Exception <class '__main__.PluginMgrTestFail'> ('setup', None, '"-----> prepare stage" did not complete successfully') (caught in test_runner, running test 2 0301 Change CHOKE with limit setting stage setup)
# ---------------
# traceback
# ---------------
# ---------------
# multiprocessing.pool.RemoteTraceback: 
# """
# Traceback (most recent call last):
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 142, in call_pre_case
#     pgn_inst.pre_case(caseinfo, test_skip)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 63, in pre_case
#     self.prepare_test(test)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 38, in prepare_test
#     self._ipr2_ns_create()
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 187, in _ipr2_ns_create
#     self._exec_cmd_batched('pre', self._ipr2_ns_create_cmds())
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 242, in _exec_cmd_batched
#     self._exec_cmd(stage, cmd)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/plugin-lib/nsPlugin.py", line 233, in _exec_cmd
#     proc.stdin.flush()
# BrokenPipeError: [Errno 32] Broken pipe
# 
# During handling of the above exception, another exception occurred:
# 
# Traceback (most recent call last):
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 125, in worker
#     result = (True, func(*args, **kwds))
#                     ^^^^^^^^^^^^^^^^^^^
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 48, in mapstar
#     return list(map(*args))
#            ^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 602, in __mp_runner
#     (_, tsr) = test_runner(mp_pm, mp_args, tests)
#                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 536, in test_runner
#     res = run_one_test(pm, args, index, tidx)
#           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 419, in run_one_test
#     pm.call_pre_case(tidx)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 146, in call_pre_case
#     print('test_ordinal is {}'.format(test_ordinal))
#                                       ^^^^^^^^^^^^
# NameError: name 'test_ordinal' is not defined
# """
# 
# The above exception was the direct cause of the following exception:
# 
# Traceback (most recent call last):
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 1028, in <module>
#     main()
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 1022, in main
#     set_operation_mode(pm, parser, args, remaining)
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 964, in set_operation_mode
#     catresults = test_runner_mp(pm, args, alltests)
#                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing/./tdc.py", line 624, in test_runner_mp
#     pres = p.map(__mp_runner, batches)
#            ^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 367, in map
#     return self._map_async(func, iterable, mapstar, chunksize).get()
#            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#   File "/usr/lib64/python3.11/multiprocessing/pool.py", line 774, in get
#     raise self._value
# NameError: name 'test_ordinal' is not defined
not ok 1 selftests: tc-testing: tdc.sh # exit=1
make[1]: Leaving directory '/mnt/share156/jiri/net-next/tools/testing/selftests/tc-testing'
make: Leaving directory '/mnt/share156/jiri/net-next/tools/testing/selftests'

  reply	other threads:[~2024-01-05 11:24 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-04 12:58 [patch net-next] net: sched: move block device tracking into tcf_block_get/put_ext() Jiri Pirko
2024-01-04 14:32 ` Ido Schimmel
2024-01-04 16:10 ` Jamal Hadi Salim
2024-01-04 18:03   ` Jiri Pirko
2024-01-04 18:22     ` Jamal Hadi Salim
2024-01-05 11:24       ` Jiri Pirko [this message]
2024-01-05 11:51         ` Pedro Tammela
2024-01-06 11:14           ` Jiri Pirko
2024-01-06 11:49             ` Jamal Hadi Salim
2024-01-04 19:26 ` Victor Nogueira
2024-01-04 19:36   ` Jamal Hadi Salim
2024-01-05 11:20 ` patchwork-bot+netdevbpf
2024-01-10 12:09 ` Ido Schimmel
2024-01-10 14:08   ` Jiri Pirko
2024-01-10 16:17   ` Jiri Pirko
2024-01-11  8:51     ` Ido Schimmel
2024-01-11 15:40   ` Jamal Hadi Salim
2024-01-11 15:42     ` Jamal Hadi Salim
2024-01-11 16:17       ` Petr Machata
2024-01-11 19:55         ` Jamal Hadi Salim
2024-01-11 21:44           ` Petr Machata
2024-01-12 14:47             ` Jamal Hadi Salim
2024-01-12 15:37               ` Petr Machata
2024-01-15 21:02                 ` Jamal Hadi Salim
2024-01-16 10:15                   ` Petr Machata
2024-01-17 20:44                     ` Jamal Hadi Salim
2024-01-19 16:28                       ` Petr Machata
2024-01-21 18:32                         ` Jamal Hadi Salim
2024-01-11 16:27       ` Jiri Pirko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZZfm3TbhyAfIMzDQ@nanopsycho \
    --to=jiri@resnulli.us \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=idosch@idosch.org \
    --cc=jhs@mojatatu.com \
    --cc=kuba@kernel.org \
    --cc=mleitner@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=paulb@nvidia.com \
    --cc=pctammela@mojatatu.com \
    --cc=victor@mojatatu.com \
    --cc=vladbu@nvidia.com \
    --cc=xiyou.wangcong@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.