lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <580b9f28-7a68-e618-b2d5-b8663386aa12@alu.unizg.hr>
Date:   Thu, 20 Jul 2023 18:07:00 +0200
From:   Mirsad Todorovac <mirsad.todorovac@....unizg.hr>
To:     Petr Machata <petrm@...dia.com>
Cc:     netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
        "David S. Miller" <davem@...emloft.net>,
        Eric Dumazet <edumazet@...gle.com>,
        Jakub Kicinski <kuba@...nel.org>,
        Paolo Abeni <pabeni@...hat.com>, Shuah Khan <shuah@...nel.org>,
        linux-kselftest@...r.kernel.org, Ido Schimmel <idosch@...dia.com>
Subject: Re: [PROBLEM] seltests: net/forwarding/sch_ets.sh [HANG]

On 7/20/23 11:43, Petr Machata wrote:
> 
> Mirsad Todorovac <mirsad.todorovac@....unizg.hr> writes:
> 
>> Using the same config for 6.5-rc2 on Ubuntu 22.04 LTS and 22.10, the execution
>> stop at the exact same line on both boxes (os I reckon it is more than an
>> accident):
>>
>> # selftests: net/forwarding: sch_ets.sh
>> # TEST: ping vlan 10                                                  [ OK ]
>> # TEST: ping vlan 11                                                  [ OK ]
>> # TEST: ping vlan 12                                                  [ OK ]
>> # Running in priomap mode
>> # Testing ets bands 3 strict 3, streams 0 1
>> # TEST: band 0                                                        [ OK ]
>> # INFO: Expected ratio >95% Measured ratio 100.00
>> # TEST: band 1                                                        [ OK ]
>> # INFO: Expected ratio <5% Measured ratio 0
>> # Testing ets bands 3 strict 3, streams 1 2
>> # TEST: band 1                                                        [ OK ]
>> # INFO: Expected ratio >95% Measured ratio 100.00
>> # TEST: band 2                                                        [ OK ]
>> # INFO: Expected ratio <5% Measured ratio 0
>> # Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 0 1
>> # TEST: band 0                                                        [ OK ]
>> # INFO: Expected ratio >95% Measured ratio 100.00
>> # TEST: band 1                                                        [ OK ]
>> # INFO: Expected ratio <5% Measured ratio 0
>> # Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 1 2
>> # TEST: bands 1:2                                                     [ OK ]
>> # INFO: Expected ratio 2.00 Measured ratio 1.99
>> # Testing ets bands 3 quanta 3300 3300 3300, streams 0 1 2
>> # TEST: bands 0:1                                                     [ OK ]
>> # INFO: Expected ratio 1.00 Measured ratio .99
>> # TEST: bands 0:2                                                     [ OK ]
>> # INFO: Expected ratio 1.00 Measured ratio 1.00
>> # Testing ets bands 3 quanta 5000 3500 1500, streams 0 1 2
>> # TEST: bands 0:1                                                     [ OK ]
>> # INFO: Expected ratio 1.42 Measured ratio 1.42
>> # TEST: bands 0:2                                                     [ OK ]
>> # INFO: Expected ratio 3.33 Measured ratio 3.33
>> # Testing ets bands 3 quanta 5000 8000 1500, streams 0 1 2
>> # TEST: bands 0:1                                                     [ OK ]
>> # INFO: Expected ratio 1.60 Measured ratio 1.59
>> # TEST: bands 0:2                                                     [ OK ]
>> # INFO: Expected ratio 3.33 Measured ratio 3.33
>> # Testing ets bands 2 quanta 5000 2500, streams 0 1
>> # TEST: bands 0:1                                                     [ OK ]
>> # INFO: Expected ratio 2.00 Measured ratio 1.99
>> # Running in classifier mode
>> # Testing ets bands 3 strict 3, streams 0 1
>> # TEST: band 0                                                        [ OK ]
>> # INFO: Expected ratio >95% Measured ratio 100.00
>> # TEST: band 1                                                        [ OK ]
>> # INFO: Expected ratio <5% Measured ratio 0
>> # Testing ets bands 3 strict 3, streams 1 2
>> # TEST: band 1                                                        [ OK ]
>> # INFO: Expected ratio >95% Measured ratio 100.00
>> # TEST: band 2                                                        [ OK ]
>> # INFO: Expected ratio <5% Measured ratio 0
>> # Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 0 1
>>
>> I tried to run 'set -x' enabled version standalone, but that one finished
>> correctly (?).
>>
>> It could be something previous scripts left, but right now I don't have a clue.
>> I can attempt to rerun all tests with sch_ets.sh bash 'set -x' enabled later today.
> 
> If you run it standalone without set -x, does it finish as well?

Added that. Yes, standlone run finishes correctly, with or without 'set -x':

root@...iant:/home/marvin/linux/kernel/linux_torvalds/tools/testing/selftests/net/forwarding# ./sch_ets.sh
TEST: ping vlan 10                                                  [ OK ]
TEST: ping vlan 11                                                  [ OK ]
TEST: ping vlan 12                                                  [ OK ]
Running in priomap mode
Testing ets bands 3 strict 3, streams 0 1
TEST: band 0                                                        [ OK ]
INFO: Expected ratio >95% Measured ratio 100.00
TEST: band 1                                                        [ OK ]
INFO: Expected ratio <5% Measured ratio 0
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 strict 3, streams 1 2
TEST: band 1                                                        [ OK ]
INFO: Expected ratio >95% Measured ratio 100.00
TEST: band 2                                                        [ OK ]
INFO: Expected ratio <5% Measured ratio 0
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 0 1
TEST: band 0                                                        [ OK ]
INFO: Expected ratio >95% Measured ratio 100.00
TEST: band 1                                                        [ OK ]
INFO: Expected ratio <5% Measured ratio 0
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 1 2
TEST: bands 1:2                                                     [ OK ]
INFO: Expected ratio 2.00 Measured ratio 1.99
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 quanta 3300 3300 3300, streams 0 1 2
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 1.00 Measured ratio 1.00
TEST: bands 0:2                                                     [ OK ]
INFO: Expected ratio 1.00 Measured ratio .99
killing MZ
killed MZ
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 quanta 5000 3500 1500, streams 0 1 2
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 1.42 Measured ratio 1.42
TEST: bands 0:2                                                     [ OK ]
INFO: Expected ratio 3.33 Measured ratio 3.33
killing MZ
killed MZ
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 quanta 5000 8000 1500, streams 0 1 2
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 1.60 Measured ratio 1.59
TEST: bands 0:2                                                     [ OK ]
INFO: Expected ratio 3.33 Measured ratio 3.33
killing MZ
killed MZ
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 2 quanta 5000 2500, streams 0 1
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 2.00 Measured ratio 1.99
killing MZ
killed MZ
killing MZ
killed MZ
Running in classifier mode
Testing ets bands 3 strict 3, streams 0 1
TEST: band 0                                                        [ OK ]
INFO: Expected ratio >95% Measured ratio 100.00
TEST: band 1                                                        [ OK ]
INFO: Expected ratio <5% Measured ratio 0
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 strict 3, streams 1 2
TEST: band 1                                                        [ OK ]
INFO: Expected ratio >95% Measured ratio 100.00
TEST: band 2                                                        [ OK ]
INFO: Expected ratio <5% Measured ratio 0
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 0 1
TEST: band 0                                                        [ OK ]
INFO: Expected ratio >95% Measured ratio 100.00
TEST: band 1                                                        [ OK ]
INFO: Expected ratio <5% Measured ratio 0
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 4 strict 1 quanta 5000 2500 1500, streams 1 2
TEST: bands 1:2                                                     [ OK ]
INFO: Expected ratio 2.00 Measured ratio 1.99
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 quanta 3300 3300 3300, streams 0 1 2
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 1.00 Measured ratio .99
TEST: bands 0:2                                                     [ OK ]
INFO: Expected ratio 1.00 Measured ratio .99
killing MZ
killed MZ
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 quanta 5000 3500 1500, streams 0 1 2
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 1.42 Measured ratio 1.42
TEST: bands 0:2                                                     [ OK ]
INFO: Expected ratio 3.33 Measured ratio 3.33
killing MZ
killed MZ
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 3 quanta 5000 8000 1500, streams 0 1 2
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 1.60 Measured ratio 1.60
TEST: bands 0:2                                                     [ OK ]
INFO: Expected ratio 3.33 Measured ratio 3.33
killing MZ
killed MZ
killing MZ
killed MZ
killing MZ
killed MZ
Testing ets bands 2 quanta 5000 2500, streams 0 1
TEST: bands 0:1                                                     [ OK ]
INFO: Expected ratio 2.00 Measured ratio 2.00
killing MZ
killed MZ
killing MZ
killed MZ
root@...iant:/home/marvin/linux/kernel/linux_torvalds/tools/testing/selftests/net/forwarding#

> That would imply that the reproducer needs to include the previous tests as
> well.

This is entirely possible, as timeouts and CTRL+C events do not seem to be caught
and the cleanup is not done ...

sch_ets_core.sh:	trap cleanup EXIT

Some tests time out even after settings:timeout=240, so IMHO this should be taken into account.

Best regards,
Mirsad Todorovac

> It looks like the test is stuck in ets_test_mixed in classifier_mode.
> A way to run just this test would be:
> 
>      TESTS="classifier_mode ets_test_mixed" ./sch_ets.sh
> 
> Looking at the code, the only place that I can see that waits on
> anything is the "{ kill %% && wait %%; } 2>/dev/null" line in
> stop_traffic() (in lib.sh). Maybe something like this would let
> us see if that's the case:
> 
> modified   tools/testing/selftests/net/forwarding/lib.sh
> @@ -1468,8 +1470,10 @@ start_tcp_traffic()
>   
>   stop_traffic()
>   {
> +	echo killing MZ
>   	# Suppress noise from killing mausezahn.
>   	{ kill %% && wait %%; } 2>/dev/null
> +	echo killed MZ
>   }

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ