< TEST_PROGS=toeplitz.py TEST_GEN_PROGS="" run_tests make: Entering directory '/srv/vmksft/testing/wt-24/tools/testing/selftests' make[1]: Entering directory '/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw' make[1]: Nothing to be done for 'all'. make[1]: Entering directory '/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw' # overriding timeout to 720 # selftests: drivers/net/hw: toeplitz.py # TAP version 13 # 1..12 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 194, in test # # Exception| with bkg(" ".join(rx_cmd), ksft_ready=True, exit_wait=True) as rx_proc: # # Exception| ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/utils.py", line 200, in __exit__ # # Exception| return self.process(terminate=terminate, fail=self.check_fail, # # Exception| ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| expect_fail=self.expect_fail) # # Exception| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/utils.py", line 129, in process # # Exception| raise CmdExitFailure("Command failed", self) # # Exception| net.lib.py.utils.CmdExitFailure: Command failed # # Exception| CMD: /srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/toeplitz -4 -t -d 39633 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 41 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 0: rx_hash 0xcf10fe05 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49036 dport 39633] != expected 0x9119135a # # Exception| cpu 0: rx_hash 0xa04f9d8c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49064 dport 39633] != expected 0xb53cebc8 # # Exception| cpu 0: rx_hash 0x7ef15a9e [saddr 192.0.3.2 daddr 192.0.3.1 sport 49082 dport 39633] != expected 0xfd771aec # # Exception| cpu 0: rx_hash 0x139435dd [saddr 192.0.3.2 daddr 192.0.3.1 sport 49098 dport 39633] != expected 0x73794ed4 # # Exception| cpu 4: rx_hash 0xb7a85b6c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49028 dport 39633] != expected 0x5a6445c0 # # Exception| cpu 4: rx_hash 0x44e31d75 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49108 dport 39633] != expected 0x66b5445e # # Exception| cpu 4: rx_hash 0xcd2af2cf [saddr 192.0.3.2 daddr 192.0.3.1 sport 49112 dport 39633] != expected 0x3b32bff0 # # Exception| cpu 4: rx_hash 0x8dba1c87 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49130 dport 39633] != expected 0xc1a61b72 # # Exception| cpu 5: rx_hash 0xc5fe1b10 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49020 dport 39633] != expected 0xb3a0920b # # Exception| cpu 5: rx_hash 0xe0df73c4 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49050 dport 39633] != expected 0x4fa84f4a # # Exception| cpu 5: rx_hash 0x3a15ad43 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49058 dport 39633] != expected 0x53b4e73b # # Exception| cpu 5: rx_hash 0x0649fff7 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49074 dport 39633] != expected 0x360a4c76 # # Exception| cpu 5: rx_hash 0xf502b9ee [saddr 192.0.3.2 daddr 192.0.3.1 sport 49122 dport 39633] != expected 0xadb4de8 # # Exception| cpu 0: rx_hash 0xdacd342f [saddr 192.0.3.2 daddr 192.0.3.1 sport 49140 dport 39633] != expected 0xd46a11f8 # # Exception| cpu 0: rx_hash 0xd1738571 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49154 dport 39633] != expected 0xb379f1b5 # # Exception| cpu 0: rx_hash 0x58ba6acb [saddr 192.0.3.2 daddr 192.0.3.1 sport 49166 dport 39633] != expected 0xeefe0a1b # # Exception| cpu 0: rx_hash 0xfc86047a [saddr 192.0.3.2 daddr 192.0.3.1 sport 49216 dport 39633] != expected 0xc7e3010f # # Exception| cpu 4: rx_hash 0x7ccb5654 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49134 dport 39633] != expected 0x575cb646 # # Exception| cpu 4: rx_hash 0x37e50942 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49194 dport 39633] != expected 0xcadbf289 # # Exception| cpu 4: rx_hash 0x0bb95bf6 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49210 dport 39633] != expected 0xaf6559c4 # # Exception| cpu 4: rx_hash 0x754febc0 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49228 dport 39633] != expected 0x9a64faa1 # # Exception| cpu 5: rx_hash 0x64e6387f [saddr 192.0.3.2 daddr 192.0.3.1 sport 49182 dport 39633] != expected 0x8b40a156 # # Exception| cpu 5: rx_hash 0x4f5dac2b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49186 dport 39633] != expected 0x1a6a413 # # Exception| cpu 5: rx_hash 0xc6944391 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49198 dport 39633] != expected 0x5c215fbd # # Exception| cpu 5: rx_hash 0x0df74ea9 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49220 dport 39633] != expected 0x5119ac3b # # Exception| cpu 5: rx_hash 0x5a806601 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49242 dport 39633] != expected 0x44d5a6b1 # # Exception| cpu 5: rx_hash 0x713bf255 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49254 dport 39633] != expected 0xce33a3f4 # # Exception| cpu 0: rx_hash 0xaf853547 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49268 dport 39633] != expected 0x867852d0 # # Exception| cpu 0: rx_hash 0x6846c835 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49296 dport 39633] != expected 0x5785d5f8 # # Exception| cpu 0: rx_hash 0xe5fb3e1a [saddr 192.0.3.2 daddr 192.0.3.1 sport 49334 dport 39633] != expected 0x5e557703 # # Exception| cpu 0: rx_hash 0x9b0d8e2c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49344 dport 39633] != expected 0x6b54d466 # # Exception| cpu 4: rx_hash 0x541a9a81 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49280 dport 39633] != expected 0x323b7eb5 # # Exception| cpu 4: rx_hash 0xce40aa4e [saddr 192.0.3.2 daddr 192.0.3.1 sport 49290 dport 39633] != expected 0xd4b37246 # # Exception| cpu 4: rx_hash 0xca34b3db [saddr 192.0.3.2 daddr 192.0.3.1 sport 49312 dport 39633] != expected 0x80e42b13 # # Exception| cpu 4: rx_hash 0x6a7cc4ff [saddr 192.0.3.2 daddr 192.0.3.1 sport 49348 dport 39633] != expected 0xfdae7952 # # Exception| cpu 4: rx_hash 0xf026f430 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49358 dport 39633] != expected 0x1b2675a1 # # Exception| cpu 4: rx_hash 0xb4c203ed [saddr 192.0.3.2 daddr 192.0.3.1 sport 49366 dport 39633] != expected 0xb5e58876 # # Exception| cpu 4: rx_hash 0xf452eda5 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49380 dport 39633] != expected 0x4f712cf4 # # Exception| cpu 4: rx_hash 0xb0b61a78 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49404 dport 39633] != expected 0xe1b2d123 # # Exception| cpu 5: rx_hash 0x43fd5c61 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49324 dport 39633] != expected 0xdd63d0bd # # Exception| cpu 5: rx_hash 0xdb9d6064 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49394 dport 39633] != expected 0x91c070e4 # # Exception| count: pass=0 nohash=0 fail=41 # # Exception| # not ok 1 toeplitz.test.tcp_ipv4 # # Receiver output: # # # # RSS indirection table size: 256 # # # cpu 0: rx_hash 0x40cf3f53 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34862 dport 56273] OK # # # cpu 0: rx_hash 0x9e71f841 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34876 dport 56273] OK # # # cpu 0: rx_hash 0xf3149702 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34892 dport 56273] OK # # # cpu 0: rx_hash 0xb96a9c5f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34958 dport 56273] OK # # # cpu 4: rx_hash 0xda950f9c [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34852 dport 56273] OK # # # cpu 4: rx_hash 0x7ea9612d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34922 dport 56273] OK # # # cpu 4: rx_hash 0xa017a63f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34936 dport 56273] OK # # # cpu 4: rx_hash 0x2330ac90 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34948 dport 56273] OK # # # cpu 5: rx_hash 0xb7f060df [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34900 dport 56273] OK # # # cpu 5: rx_hash 0x2daa5010 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34910 dport 56273] OK # # # cpu 5: rx_hash 0x6d3abe58 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34924 dport 56273] OK # # # cpu 5: rx_hash 0x30a373e5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34946 dport 56273] OK # # # cpu 5: rx_hash 0xfd8e6b82 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34966 dport 56273] OK # # # cpu 0: rx_hash 0xae8d5abf [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34978 dport 56273] OK # # # cpu 0: rx_hash 0xea69ad62 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35002 dport 56273] OK # # # cpu 4: rx_hash 0x8142d77e [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34996 dport 56273] OK # # # cpu 4: rx_hash 0x870cc221 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35018 dport 56273] OK # # # cpu 4: rx_hash 0x210aa05a [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35024 dport 56273] OK # # # cpu 4: rx_hash 0x8378dbb4 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35040 dport 56273] OK # # # cpu 4: rx_hash 0x619a4e12 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35042 dport 56273] OK # # # cpu 5: rx_hash 0x8536ceeb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34974 dport 56273] OK # # # cpu 5: rx_hash 0x4c6fcf19 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34976 dport 56273] OK # # # cpu 5: rx_hash 0xc5a620a3 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34988 dport 56273] OK # # # cpu 5: rx_hash 0x4a21da46 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35038 dport 56273] OK # # # cpu 5: rx_hash 0x5dc61ca6 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35058 dport 56273] OK # # # cpu 0: rx_hash 0x64ed3c98 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35074 dport 56273] OK # # # cpu 0: rx_hash 0x58b16e2c [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35090 dport 56273] OK # # # cpu 0: rx_hash 0x0bb25f11 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35110 dport 56273] OK # # # cpu 0: rx_hash 0x5a8b62e6 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35142 dport 56273] OK # # # cpu 0: rx_hash 0x1e6f953b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35166 dport 56273] OK # # # cpu 0: rx_hash 0xeb6ac67d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35184 dport 56273] OK # # # cpu 4: rx_hash 0xd1788196 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35102 dport 56273] OK # # # cpu 4: rx_hash 0x91e86fde [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35116 dport 56273] OK # # # cpu 4: rx_hash 0x37ee0da5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35126 dport 56273] OK # # # cpu 4: rx_hash 0x7544ef27 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35152 dport 56273] OK # # # cpu 4: rx_hash 0x35d4016f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35170 dport 56273] OK # # # cpu 4: rx_hash 0xbc1deed5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35182 dport 56273] OK # # # cpu 5: rx_hash 0xbe27e21f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35130 dport 56273] OK # # # cpu 5: rx_hash 0x31a018fa [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35144 dport 56273] OK # # # cpu 5: rx_hash 0xef1edfe8 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35162 dport 56273] OK # # # count: pass=40 nohash=0 fail=0 # ok 2 toeplitz.test.tcp_ipv6 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 194, in test # # Exception| with bkg(" ".join(rx_cmd), ksft_ready=True, exit_wait=True) as rx_proc: # # Exception| ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/utils.py", line 200, in __exit__ # # Exception| return self.process(terminate=terminate, fail=self.check_fail, # # Exception| ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| expect_fail=self.expect_fail) # # Exception| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/utils.py", line 129, in process # # Exception| raise CmdExitFailure("Command failed", self) # # Exception| net.lib.py.utils.CmdExitFailure: Command failed # # Exception| CMD: /srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/toeplitz -4 -u -d 34211 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 44 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 37135 dport 34211] != expected 0x599cbfbe # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 37135 dport 34211] != expected 0x599cbfbe # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 42444 dport 34211] != expected 0xcc1ab5ed # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 42444 dport 34211] != expected 0xcc1ab5ed # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 38430 dport 34211] != expected 0xaf284563 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 38430 dport 34211] != expected 0xaf284563 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 36731 dport 34211] != expected 0x987d8ab8 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 36731 dport 34211] != expected 0x987d8ab8 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 48687 dport 34211] != expected 0x7daad58 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 48687 dport 34211] != expected 0x7daad58 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 56338 dport 34211] != expected 0xcc10596b # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 56338 dport 34211] != expected 0xcc10596b # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 56188 dport 34211] != expected 0x9f32e29a # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 56188 dport 34211] != expected 0x9f32e29a # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49197 dport 34211] != expected 0x2d18bc4 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49197 dport 34211] != expected 0x2d18bc4 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 59674 dport 34211] != expected 0xc7777e16 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 59674 dport 34211] != expected 0xc7777e16 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 34097 dport 34211] != expected 0xb67ca494 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 34097 dport 34211] != expected 0xb67ca494 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 39896 dport 34211] != expected 0xb8f9a0cb # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 39896 dport 34211] != expected 0xb8f9a0cb # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 48083 dport 34211] != expected 0x5b29c7be # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 48083 dport 34211] != expected 0x5b29c7be # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 35557 dport 34211] != expected 0x2cb4542 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 35557 dport 34211] != expected 0x2cb4542 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 35225 dport 34211] != expected 0xec34f53a # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 35225 dport 34211] != expected 0xec34f53a # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 34746 dport 34211] != expected 0x4c843c87 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 34746 dport 34211] != expected 0x4c843c87 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49303 dport 34211] != expected 0x9f8facb5 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49303 dport 34211] != expected 0x9f8facb5 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49921 dport 34211] != expected 0xd0ff3a22 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49921 dport 34211] != expected 0xd0ff3a22 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 43281 dport 34211] != expected 0xd54ca99c # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 43281 dport 34211] != expected 0xd54ca99c # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 60488 dport 34211] != expected 0xf59e35f8 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 60488 dport 34211] != expected 0xf59e35f8 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 44881 dport 34211] != expected 0x92980cb8 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 44881 dport 34211] != expected 0x92980cb8 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 42427 dport 34211] != expected 0xa2f1a25b # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 42427 dport 34211] != expected 0xa2f1a25b # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 47257 dport 34211] != expected 0xd9b87e70 # # Exception| cpu 4: rx_hash 0xa1d3374b [saddr 192.0.3.2 daddr 192.0.3.1 sport 47257 dport 34211] != expected 0xd9b87e70 # # Exception| count: pass=0 nohash=0 fail=44 # # Exception| # not ok 3 toeplitz.test.udp_ipv4 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 194, in test # # Exception| with bkg(" ".join(rx_cmd), ksft_ready=True, exit_wait=True) as rx_proc: # # Exception| ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/utils.py", line 200, in __exit__ # # Exception| return self.process(terminate=terminate, fail=self.check_fail, # # Exception| ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| expect_fail=self.expect_fail) # # Exception| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/utils.py", line 129, in process # # Exception| raise CmdExitFailure("Command failed", self) # # Exception| net.lib.py.utils.CmdExitFailure: Command failed # # Exception| CMD: /srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/toeplitz -6 -u -d 39811 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 44 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 60827 dport 39811] != expected 0xbb4c94c7 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 60827 dport 39811] != expected 0xbb4c94c7 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34482 dport 39811] != expected 0xc511959f # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34482 dport 39811] != expected 0xc511959f # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35963 dport 39811] != expected 0x4f6adf70 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35963 dport 39811] != expected 0x4f6adf70 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 40480 dport 39811] != expected 0xb9603c2c # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 40480 dport 39811] != expected 0xb9603c2c # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37295 dport 39811] != expected 0xd0ab097a # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37295 dport 39811] != expected 0xd0ab097a # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 50462 dport 39811] != expected 0xcf95e983 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 50462 dport 39811] != expected 0xcf95e983 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39431 dport 39811] != expected 0xfde99004 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39431 dport 39811] != expected 0xfde99004 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37873 dport 39811] != expected 0x5129d7ea # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37873 dport 39811] != expected 0x5129d7ea # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38135 dport 39811] != expected 0x646c5e6b # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38135 dport 39811] != expected 0x646c5e6b # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 42742 dport 39811] != expected 0x5ae9e5c8 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 42742 dport 39811] != expected 0x5ae9e5c8 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41972 dport 39811] != expected 0x873fc40f # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41972 dport 39811] != expected 0x873fc40f # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58973 dport 39811] != expected 0xac1c4a52 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58973 dport 39811] != expected 0xac1c4a52 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53308 dport 39811] != expected 0xcf51bd4c # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53308 dport 39811] != expected 0xcf51bd4c # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 57304 dport 39811] != expected 0xa83cae6f # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 57304 dport 39811] != expected 0xa83cae6f # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37397 dport 39811] != expected 0xa52fefb3 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37397 dport 39811] != expected 0xa52fefb3 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 51142 dport 39811] != expected 0x3a0f6230 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 51142 dport 39811] != expected 0x3a0f6230 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58090 dport 39811] != expected 0xb3423e98 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58090 dport 39811] != expected 0xb3423e98 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 57287 dport 39811] != expected 0x3a8ead8a # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 57287 dport 39811] != expected 0x3a8ead8a # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 33306 dport 39811] != expected 0x48fde2b0 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 33306 dport 39811] != expected 0x48fde2b0 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 47777 dport 39811] != expected 0xb641c254 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 47777 dport 39811] != expected 0xb641c254 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43399 dport 39811] != expected 0x52e74f97 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43399 dport 39811] != expected 0x52e74f97 # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 51714 dport 39811] != expected 0xdaaebadc # # Exception| cpu 5: rx_hash 0x230004eb [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 51714 dport 39811] != expected 0xdaaebadc # # Exception| count: pass=0 nohash=0 fail=44 # # Exception| # not ok 4 toeplitz.test.udp_ipv6 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 182, in test # # Exception| irq_cpus = ",".join([str(x) for x in _get_irq_cpus(cfg)]) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 5 toeplitz.test.rss_tcp_ipv4 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 182, in test # # Exception| irq_cpus = ",".join([str(x) for x in _get_irq_cpus(cfg)]) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 6 toeplitz.test.rss_tcp_ipv6 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 182, in test # # Exception| irq_cpus = ",".join([str(x) for x in _get_irq_cpus(cfg)]) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 7 toeplitz.test.rss_udp_ipv4 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 182, in test # # Exception| irq_cpus = ",".join([str(x) for x in _get_irq_cpus(cfg)]) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 8 toeplitz.test.rss_udp_ipv6 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 187, in test # # Exception| rps_cpus = _get_unused_rps_cpus(cfg, count=2) # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 80, in _get_unused_rps_cpus # # Exception| rx_cpus = set(_get_irq_cpus(cfg)) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 9 toeplitz.test.rps_tcp_ipv4 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 187, in test # # Exception| rps_cpus = _get_unused_rps_cpus(cfg, count=2) # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 80, in _get_unused_rps_cpus # # Exception| rx_cpus = set(_get_irq_cpus(cfg)) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 10 toeplitz.test.rps_tcp_ipv6 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 187, in test # # Exception| rps_cpus = _get_unused_rps_cpus(cfg, count=2) # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 80, in _get_unused_rps_cpus # # Exception| rx_cpus = set(_get_irq_cpus(cfg)) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 11 toeplitz.test.rps_udp_ipv4 # # Exception| Traceback (most recent call last): # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/net/lib/py/ksft.py", line 420, in ksft_run # # Exception| func(*args) # # Exception| ~~~~^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 187, in test # # Exception| rps_cpus = _get_unused_rps_cpus(cfg, count=2) # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 80, in _get_unused_rps_cpus # # Exception| rx_cpus = set(_get_irq_cpus(cfg)) # # Exception| ~~~~~~~~~~~~~^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 67, in _get_irq_cpus # # Exception| cpus.append(_get_cpu_for_irq(napis[queues[name]["napi-id"]]["irq"])) # # Exception| ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ # # Exception| File "/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw/./toeplitz.py", line 47, in _get_cpu_for_irq # # Exception| raise KsftFailEx(f"IRQ{irq} is not mapped to a single core: {data}") # # Exception| net.lib.py.ksft.KsftFailEx: IRQ36 is not mapped to a single core: 0-5 # # Exception| # not ok 12 toeplitz.test.rps_udp_ipv6 # # Totals: pass:1 fail:11 xfail:0 xpass:0 skip:0 error:0 not ok 1 selftests: drivers/net/hw: toeplitz.py # exit=1 make[1]: Leaving directory '/srv/vmksft/testing/wt-24/tools/testing/selftests/drivers/net/hw' make: Leaving directory '/srv/vmksft/testing/wt-24/tools/testing/selftests' xx__-> echo $? 0 xx__-> echo scan > /sys/kernel/debug/kmemleak xx__-> /opt/nipa/contest/scripts/env_check.py Comparing to existing state file: no differences detected. Current system state saved to /tmp/nipa-env-state.json xx__-> echo $? 0 xx__->