< 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 205, 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 134, 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 48987 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 40 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 0: rx_hash 0x3c5fafb0 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49628 dport 48987] != expected 0xdf7d989 # # Exception| cpu 0: rx_hash 0x099771ec [saddr 192.0.3.2 daddr 192.0.3.1 sport 49636 dport 48987] != expected 0xb2001bb3 # # Exception| cpu 0: rx_hash 0x95e3cba1 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49688 dport 48987] != expected 0x46123584 # # Exception| cpu 4: rx_hash 0xc7ca95d2 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49652 dport 48987] != expected 0xcdf92ccf # # Exception| cpu 5: rx_hash 0xb99afa82 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49610 dport 48987] != expected 0x722388e6 # # Exception| cpu 5: rx_hash 0xd20b463a [saddr 192.0.3.2 daddr 192.0.3.1 sport 49622 dport 48987] != expected 0xdcc0c93 # # Exception| cpu 5: rx_hash 0x299e7c58 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49662 dport 48987] != expected 0xcdc2f9d5 # # Exception| cpu 5: rx_hash 0x62c9bf64 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49676 dport 48987] != expected 0xc60fdf09 # # Exception| cpu 5: rx_hash 0xebb3a4f1 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49702 dport 48987] != expected 0xf9c891ad # # Exception| cpu 0: rx_hash 0x3c90dd80 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49704 dport 48987] != expected 0x6179946 # # Exception| cpu 0: rx_hash 0x57016138 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49716 dport 48987] != expected 0x79f81d33 # # Exception| cpu 0: rx_hash 0x067dbf1a [saddr 192.0.3.2 daddr 192.0.3.1 sport 49730 dport 48987] != expected 0x262e9a3d # # Exception| cpu 0: rx_hash 0x61534d05 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49762 dport 48987] != expected 0x19d20183 # # Exception| cpu 4: rx_hash 0x25ee40cf [saddr 192.0.3.2 daddr 192.0.3.1 sport 49718 dport 48987] != expected 0x8631a6d1 # # Exception| cpu 4: rx_hash 0xa3b1e79c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49742 dport 48987] != expected 0x26382934 # # Exception| cpu 4: rx_hash 0x2674b2ae [saddr 192.0.3.2 daddr 192.0.3.1 sport 49752 dport 48987] != expected 0x59ec785b # # Exception| cpu 4: rx_hash 0xfde88578 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49770 dport 48987] != expected 0xe6206f7b # # Exception| cpu 5: rx_hash 0x80221849 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49722 dport 48987] != expected 0x862715d8 # # Exception| cpu 5: rx_hash 0x4de50e16 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49732 dport 48987] != expected 0x2603fc2e # # Exception| cpu 5: rx_hash 0xf157cbdf [saddr 192.0.3.2 daddr 192.0.3.1 sport 49750 dport 48987] != expected 0xa63370b0 # # Exception| cpu 5: rx_hash 0x33b56146 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49786 dport 48987] != expected 0x99d95807 # # Exception| cpu 0: rx_hash 0xa7b9cb9e [saddr 192.0.3.2 daddr 192.0.3.1 sport 49796 dport 48987] != expected 0xb602971e # # Exception| cpu 0: rx_hash 0x709ab2ef [saddr 192.0.3.2 daddr 192.0.3.1 sport 49802 dport 48987] != expected 0x49dd9ff5 # # Exception| cpu 0: rx_hash 0xcc287726 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49816 dport 48987] != expected 0xc9ed136b # # Exception| cpu 0: rx_hash 0x37bd4d44 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49840 dport 48987] != expected 0x9e3e62d # # Exception| cpu 0: rx_hash 0x927115c2 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49852 dport 48987] != expected 0x9f55524 # # Exception| cpu 0: rx_hash 0xc30dcbe0 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49866 dport 48987] != expected 0x5623d22a # # Exception| cpu 0: rx_hash 0x88957aec [saddr 192.0.3.2 daddr 192.0.3.1 sport 49868 dport 48987] != expected 0x560eb439 # # Exception| cpu 0: rx_hash 0x7fbf0e29 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49880 dport 48987] != expected 0xd6135eb4 # # Exception| cpu 4: rx_hash 0x5c2cf1fc [saddr 192.0.3.2 daddr 192.0.3.1 sport 49836 dport 48987] != expected 0x760c6258 # # Exception| cpu 4: rx_hash 0x0d502fde [saddr 192.0.3.2 daddr 192.0.3.1 sport 49882 dport 48987] != expected 0x29dae556 # # Exception| cpu 5: rx_hash 0x69e42fa0 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49812 dport 48987] != expected 0xc9fba062 # # Exception| cpu 5: rx_hash 0xb2781876 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49830 dport 48987] != expected 0x7637b742 # # Exception| cpu 0: rx_hash 0xd6cc1808 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49896 dport 48987] != expected 0x9616f276 # # Exception| cpu 0: rx_hash 0xbd5da4b0 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49908 dport 48987] != expected 0xe9f97603 # # Exception| cpu 0: rx_hash 0xa9029338 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49964 dport 48987] != expected 0x3e0cd7c0 # # Exception| cpu 0: rx_hash 0xaa986159 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49986 dport 48987] != expected 0xe1d1094a # # Exception| cpu 4: rx_hash 0x5297a95a [saddr 192.0.3.2 daddr 192.0.3.1 sport 49924 dport 48987] != expected 0xfe022286 # # Exception| cpu 4: rx_hash 0xfbe4bf7b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49972 dport 48987] != expected 0xbe078e44 # # Exception| cpu 4: rx_hash 0x162aa490 [saddr 192.0.3.2 daddr 192.0.3.1 sport 50000 dport 48987] != expected 0x61e185d4 # # Exception| count: pass=0 nohash=0 fail=40 # # Exception| # not ok 1 toeplitz.test.tcp_ipv4 # # Receiver output: # # # # RSS indirection table size: 256 # # # cpu 0: rx_hash 0xcdc53d47 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44440 dport 50861] OK # # # cpu 0: rx_hash 0xc17a73e0 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44452 dport 50861] OK # # # cpu 0: rx_hash 0x2cb4680b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44480 dport 50861] OK # # # cpu 0: rx_hash 0xdb9e1cce [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44500 dport 50861] OK # # # cpu 4: rx_hash 0x865d8c4b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44446 dport 50861] OK # # # cpu 4: rx_hash 0x64b62b66 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44456 dport 50861] OK # # # cpu 4: rx_hash 0x44bf26d2 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44466 dport 50861] OK # # # cpu 4: rx_hash 0x0f2797de [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44468 dport 50861] OK # # # cpu 4: rx_hash 0x15c3f8f0 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44484 dport 50861] OK # # # cpu 4: rx_hash 0x7e524448 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44504 dport 50861] OK # # # cpu 0: rx_hash 0x4725d4b3 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44508 dport 50861] OK # # # cpu 0: rx_hash 0x35caf544 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44510 dport 50861] OK # # # cpu 0: rx_hash 0xbcb0eed1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44532 dport 50861] OK # # # cpu 0: rx_hash 0xdb516efe [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44576 dport 50861] OK # # # cpu 0: rx_hash 0x35058774 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44586 dport 50861] OK # # # cpu 0: rx_hash 0x0c72178f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44590 dport 50861] OK # # # cpu 4: rx_hash 0x00022b18 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44518 dport 50861] OK # # # cpu 4: rx_hash 0x197cb657 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44536 dport 50861] OK # # # cpu 4: rx_hash 0x89b742bd [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44600 dport 50861] OK # # # cpu 5: rx_hash 0xce90bd16 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44546 dport 50861] OK # # # cpu 5: rx_hash 0x00cd5928 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44562 dport 50861] OK # # # cpu 0: rx_hash 0x169678a1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44638 dport 50861] OK # # # cpu 0: rx_hash 0xf47ddf8c [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44648 dport 50861] OK # # # cpu 0: rx_hash 0xcd0a4f77 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44652 dport 50861] OK # # # cpu 0: rx_hash 0x407878e0 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44684 dport 50861] OK # # # cpu 4: rx_hash 0x93532d93 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44616 dport 50861] OK # # # cpu 4: rx_hash 0xd8cb9c9f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44622 dport 50861] OK # # # cpu 4: rx_hash 0xb35a2027 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44626 dport 50861] OK # # # cpu 4: rx_hash 0x48cf1a45 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44666 dport 50861] OK # # # cpu 5: rx_hash 0x0fe8e5ee [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44608 dport 50861] OK # # # cpu 5: rx_hash 0x7d07c419 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44610 dport 50861] OK # # # cpu 5: rx_hash 0xdcc3b09d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44676 dport 50861] OK # # # cpu 0: rx_hash 0x4cc73647 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44720 dport 50861] OK # # # cpu 0: rx_hash 0xca989114 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44744 dport 50861] OK # # # cpu 0: rx_hash 0xf3ef01ef [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44748 dport 50861] OK # # # cpu 0: rx_hash 0x3db2e5d1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44764 dport 50861] OK # # # cpu 0: rx_hash 0xadb6630b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44776 dport 50861] OK # # # cpu 0: rx_hash 0xc627dfb3 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44788 dport 50861] OK # # # cpu 4: rx_hash 0x6cce3bf3 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44714 dport 50861] OK # # # cpu 5: rx_hash 0x5906e5af [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44690 dport 50861] OK # # # cpu 5: rx_hash 0xf075f38e [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44706 dport 50861] OK # # # cpu 5: rx_hash 0xd07cfe3a [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44728 dport 50861] OK # # # count: pass=42 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 205, 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 134, 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 58533 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 42 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 47771 dport 58533] != expected 0xc4d662bd # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 47771 dport 58533] != expected 0xc4d662bd # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 45812 dport 58533] != expected 0xdc67399c # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 45812 dport 58533] != expected 0xdc67399c # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 38978 dport 58533] != expected 0x468f12ec # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 38978 dport 58533] != expected 0x468f12ec # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 33103 dport 58533] != expected 0x5a754e0e # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 33103 dport 58533] != expected 0x5a754e0e # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 36577 dport 58533] != expected 0x78a9b7cb # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 36577 dport 58533] != expected 0x78a9b7cb # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 48924 dport 58533] != expected 0x297222e # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 48924 dport 58533] != expected 0x297222e # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 35780 dport 58533] != expected 0xf122f1eb # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 35780 dport 58533] != expected 0xf122f1eb # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 36099 dport 58533] != expected 0xc9da66b # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 36099 dport 58533] != expected 0xc9da66b # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 40700 dport 58533] != expected 0xe4aabd4c # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 40700 dport 58533] != expected 0xe4aabd4c # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 51553 dport 58533] != expected 0x65b6d178 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 51553 dport 58533] != expected 0x65b6d178 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 45409 dport 58533] != expected 0x816d8f7 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 45409 dport 58533] != expected 0x816d8f7 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 42434 dport 58533] != expected 0xd5cfb46b # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 42434 dport 58533] != expected 0xd5cfb46b # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 54274 dport 58533] != expected 0xd76eb7cd # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 54274 dport 58533] != expected 0xd76eb7cd # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 39759 dport 58533] != expected 0x9d0a8cec # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 39759 dport 58533] != expected 0x9d0a8cec # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 55269 dport 58533] != expected 0xa32d0c59 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 55269 dport 58533] != expected 0xa32d0c59 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 48117 dport 58533] != expected 0xdcf42f40 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 48117 dport 58533] != expected 0xdcf42f40 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 43405 dport 58533] != expected 0x837d9029 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 43405 dport 58533] != expected 0x837d9029 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 33335 dport 58533] != expected 0xde7c9b27 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 33335 dport 58533] != expected 0xde7c9b27 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 46352 dport 58533] != expected 0xd981aaf2 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 46352 dport 58533] != expected 0xd981aaf2 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 52258 dport 58533] != expected 0xcc12272a # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 52258 dport 58533] != expected 0xcc12272a # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 44917 dport 58533] != expected 0x3e8b1445 # # Exception| cpu 0: rx_hash 0x7e5928da [saddr 192.0.3.2 daddr 192.0.3.1 sport 44917 dport 58533] != expected 0x3e8b1445 # # Exception| count: pass=0 nohash=0 fail=42 # # 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 205, 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 134, 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 56719 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 46 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45699 dport 56719] != expected 0xf248515d # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45699 dport 56719] != expected 0xf248515d # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56792 dport 56719] != expected 0x1bee22b8 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56792 dport 56719] != expected 0x1bee22b8 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58619 dport 56719] != expected 0x8521a422 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58619 dport 56719] != expected 0x8521a422 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36357 dport 56719] != expected 0x4917e398 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36357 dport 56719] != expected 0x4917e398 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55475 dport 56719] != expected 0x301aa1e # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55475 dport 56719] != expected 0x301aa1e # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 59777 dport 56719] != expected 0x3d1309d # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 59777 dport 56719] != expected 0x3d1309d # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36472 dport 56719] != expected 0x13e197df # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36472 dport 56719] != expected 0x13e197df # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44492 dport 56719] != expected 0x8ddeb212 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44492 dport 56719] != expected 0x8ddeb212 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39714 dport 56719] != expected 0x1d6d1753 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39714 dport 56719] != expected 0x1d6d1753 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52506 dport 56719] != expected 0xd9939b23 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52506 dport 56719] != expected 0xd9939b23 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 46874 dport 56719] != expected 0xdb672ba5 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 46874 dport 56719] != expected 0xdb672ba5 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 59247 dport 56719] != expected 0x51575d02 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 59247 dport 56719] != expected 0x51575d02 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43515 dport 56719] != expected 0xe1d22140 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43515 dport 56719] != expected 0xe1d22140 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 49539 dport 56719] != expected 0xe9c58450 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 49539 dport 56719] != expected 0xe9c58450 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 59571 dport 56719] != expected 0x74a8d908 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 59571 dport 56719] != expected 0x74a8d908 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 60006 dport 56719] != expected 0x5a72c48b # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 60006 dport 56719] != expected 0x5a72c48b # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44763 dport 56719] != expected 0x975295ad # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44763 dport 56719] != expected 0x975295ad # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58677 dport 56719] != expected 0x14bbc698 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58677 dport 56719] != expected 0x14bbc698 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37164 dport 56719] != expected 0xa9a03acb # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37164 dport 56719] != expected 0xa9a03acb # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53781 dport 56719] != expected 0x15920163 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53781 dport 56719] != expected 0x15920163 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45142 dport 56719] != expected 0xdc924cde # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45142 dport 56719] != expected 0xdc924cde # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39615 dport 56719] != expected 0x660c8ac0 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39615 dport 56719] != expected 0x660c8ac0 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44383 dport 56719] != expected 0x8d7988b3 # # Exception| cpu 4: rx_hash 0x031305a5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44383 dport 56719] != expected 0x8d7988b3 # # Exception| count: pass=0 nohash=0 fail=46 # # 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__->