< 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 1800 # selftests: drivers/net/hw: toeplitz.py # # Interface: enp1s0, driver: fbnic # 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 216, 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 50675 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 40 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 0: rx_hash 0x7e8ab7e9 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60520 dport 50675] != expected 0xac11703 # # Exception| cpu 0: rx_hash 0x0cbae847 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60536 dport 50675] != expected 0x68ec79e7 # # Exception| cpu 0: rx_hash 0x1d99fa98 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60556 dport 50675] != expected 0x7aced85 # # Exception| cpu 0: rx_hash 0x99a2e9da [saddr 192.0.3.2 daddr 192.0.3.1 sport 60578 dport 50675] != expected 0xeb3e4b8c # # Exception| cpu 0: rx_hash 0xe575522f [saddr 192.0.3.2 daddr 192.0.3.1 sport 60612 dport 50675] != expected 0x1b7d6bf4 # # Exception| cpu 4: rx_hash 0x1a4be71b [saddr 192.0.3.2 daddr 192.0.3.1 sport 60566 dport 50675] != expected 0xb0b0298b # # Exception| cpu 4: rx_hash 0xb2d135bd [saddr 192.0.3.2 daddr 192.0.3.1 sport 60596 dport 50675] != expected 0x10cde9db # # Exception| cpu 4: rx_hash 0x2353c8cc [saddr 192.0.3.2 daddr 192.0.3.1 sport 60598 dport 50675] != expected 0x1a69ef9 # # Exception| cpu 4: rx_hash 0x58566eba [saddr 192.0.3.2 daddr 192.0.3.1 sport 60618 dport 50675] != expected 0x46f97a8f # # Exception| cpu 4: rx_hash 0x06c7f0f0 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60630 dport 50675] != expected 0x683b7232 # # Exception| cpu 5: rx_hash 0x55f96b8e [saddr 192.0.3.2 daddr 192.0.3.1 sport 60542 dport 50675] != expected 0xf132b554 # # Exception| cpu 5: rx_hash 0xc0e16a13 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60580 dport 50675] != expected 0x72e0873f # # Exception| cpu 5: rx_hash 0x852efe31 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60642 dport 50675] != expected 0x33b51035 # # Exception| cpu 5: rx_hash 0x614e416d [saddr 192.0.3.2 daddr 192.0.3.1 sport 60650 dport 50675] != expected 0xf7efcdfd # # Exception| cpu 0: rx_hash 0xae5d2256 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60660 dport 50675] != expected 0xc846b262 # # Exception| cpu 0: rx_hash 0x1c3d8a2f [saddr 192.0.3.2 daddr 192.0.3.1 sport 60680 dport 50675] != expected 0x157e2d26 # # Exception| cpu 0: rx_hash 0xb4a75889 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60714 dport 50675] != expected 0xb503ed76 # # Exception| cpu 0: rx_hash 0xe4d12298 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60736 dport 50675] != expected 0x9afab57 # # Exception| cpu 4: rx_hash 0xdbbf607b [saddr 192.0.3.2 daddr 192.0.3.1 sport 60670 dport 50675] != expected 0x1d771888 # # Exception| cpu 4: rx_hash 0x6e0dd581 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60696 dport 50675] != expected 0x775343c2 # # Exception| cpu 4: rx_hash 0x374e5648 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60702 dport 50675] != expected 0xee8d8f71 # # Exception| cpu 4: rx_hash 0x50c7e7d5 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60706 dport 50675] != expected 0x715930be # # Exception| cpu 4: rx_hash 0xe3033f1b [saddr 192.0.3.2 daddr 192.0.3.1 sport 60762 dport 50675] != expected 0xbeb36f59 # # Exception| cpu 5: rx_hash 0x7c662631 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60718 dport 50675] != expected 0x3db656e7 # # Exception| cpu 5: rx_hash 0xb375450a [saddr 192.0.3.2 daddr 192.0.3.1 sport 60720 dport 50675] != expected 0x21f2978 # # Exception| cpu 5: rx_hash 0x59f21e0d [saddr 192.0.3.2 daddr 192.0.3.1 sport 60750 dport 50675] != expected 0x542bba2c # # Exception| cpu 5: rx_hash 0x150873f7 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60772 dport 50675] != expected 0x300ca7b4 # # Exception| cpu 0: rx_hash 0xa82b4f62 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60778 dport 50675] != expected 0x6d88b6cf # # Exception| cpu 0: rx_hash 0x927b81da [saddr 192.0.3.2 daddr 192.0.3.1 sport 60808 dport 50675] != expected 0xf93b80fa # # Exception| cpu 0: rx_hash 0x16409298 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60838 dport 50675] != expected 0x15a926f3 # # Exception| cpu 0: rx_hash 0x4636e889 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60876 dport 50675] != expected 0xa90560d2 # # Exception| cpu 4: rx_hash 0x4b99edbd [saddr 192.0.3.2 daddr 192.0.3.1 sport 60792 dport 50675] != expected 0x1eceaf09 # # Exception| cpu 4: rx_hash 0x288aa0cc [saddr 192.0.3.2 daddr 192.0.3.1 sport 60828 dport 50675] != expected 0x13a3558f # # Exception| cpu 4: rx_hash 0x4f031151 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60832 dport 50675] != expected 0x8c77ea40 # # Exception| cpu 4: rx_hash 0x18a776c3 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60880 dport 50675] != expected 0x87c7686f # # Exception| cpu 5: rx_hash 0x042b6128 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60816 dport 50675] != expected 0x5f4c33d6 # # Exception| cpu 5: rx_hash 0xacb1b38e [saddr 192.0.3.2 daddr 192.0.3.1 sport 60850 dport 50675] != expected 0xff31f386 # # Exception| cpu 5: rx_hash 0x8010726a [saddr 192.0.3.2 daddr 192.0.3.1 sport 60862 dport 50675] != expected 0xb3de95df # # Exception| cpu 5: rx_hash 0x89258bb2 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60882 dport 50675] != expected 0x96ac1f4d # # Exception| cpu 5: rx_hash 0x6d4534ee [saddr 192.0.3.2 daddr 192.0.3.1 sport 60890 dport 50675] != expected 0x52f6c285 # # 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 0xbe01fc83 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44638 dport 34964] OK # # # cpu 0: rx_hash 0x63796c08 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44662 dport 34964] OK # # # cpu 4: rx_hash 0x480ab06f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44640 dport 34964] OK # # # cpu 4: rx_hash 0x3de8f242 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44650 dport 34964] OK # # # cpu 4: rx_hash 0xba9b006f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44678 dport 34964] OK # # # cpu 5: rx_hash 0xf2fb9179 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44660 dport 34964] OK # # # cpu 5: rx_hash 0xde5a509d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44664 dport 34964] OK # # # cpu 5: rx_hash 0x963ac18b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44682 dport 34964] OK # # # cpu 5: rx_hash 0xc8ab5fc1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44694 dport 34964] OK # # # cpu 0: rx_hash 0x91e8dc08 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44688 dport 34964] OK # # # cpu 0: rx_hash 0xdac0ac71 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44704 dport 34964] OK # # # cpu 0: rx_hash 0xf6616d95 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44716 dport 34964] OK # # # cpu 0: rx_hash 0xdd12b1f2 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44730 dport 34964] OK # # # cpu 0: rx_hash 0xf88689ce [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44762 dport 34964] OK # # # cpu 4: rx_hash 0x8ab6d660 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44746 dport 34964] OK # # # cpu 4: rx_hash 0x222c04c6 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44776 dport 34964] OK # # # cpu 4: rx_hash 0x7b6f870f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44782 dport 34964] OK # # # cpu 4: rx_hash 0x25fe1945 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44786 dport 34964] OK # # # cpu 4: rx_hash 0xbb3f70d8 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44802 dport 34964] OK # # # cpu 4: rx_hash 0x13a5a27e [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44832 dport 34964] OK # # # cpu 4: rx_hash 0x4ae621b7 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44838 dport 34964] OK # # # cpu 5: rx_hash 0xc19ea619 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44794 dport 34964] OK # # # cpu 5: rx_hash 0x2abd8da9 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44800 dport 34964] OK # # # cpu 5: rx_hash 0x588dd207 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44816 dport 34964] OK # # # cpu 5: rx_hash 0xbced6d5b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44824 dport 34964] OK # # # cpu 0: rx_hash 0x061c4c4d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44812 dport 34964] OK # # # cpu 0: rx_hash 0xf01700a1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44850 dport 34964] OK # # # cpu 0: rx_hash 0xec9b174a [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44914 dport 34964] OK # # # cpu 0: rx_hash 0xa4fb865c [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44928 dport 34964] OK # # # cpu 4: rx_hash 0xa7b36733 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44866 dport 34964] OK # # # cpu 4: rx_hash 0xb87791b7 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44992 dport 34964] OK # # # cpu 4: rx_hash 0x2e277145 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45016 dport 34964] OK # # # cpu 5: rx_hash 0xd583389d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44882 dport 34964] OK # # # cpu 5: rx_hash 0x31e387c1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44890 dport 34964] OK # # # cpu 5: rx_hash 0x7acbf7b8 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44906 dport 34964] OK # # # cpu 5: rx_hash 0xa3299bdf [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44954 dport 34964] OK # # # cpu 5: rx_hash 0xe801eba6 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44970 dport 34964] OK # # # cpu 5: rx_hash 0xefd3f625 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44976 dport 34964] OK # # # cpu 5: rx_hash 0xca47ce19 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45008 dport 34964] OK # # # cpu 0: rx_hash 0xd6cbd9f2 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44944 dport 34964] OK # # # cpu 0: rx_hash 0x3c4c82f5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 45038 dport 34964] OK # # # count: pass=41 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 216, 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 57543 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 44 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 57786 dport 57543] != expected 0xffc204c8 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 57786 dport 57543] != expected 0xffc204c8 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 45476 dport 57543] != expected 0x8ed1dd62 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 45476 dport 57543] != expected 0x8ed1dd62 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 43692 dport 57543] != expected 0xee1eca80 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 43692 dport 57543] != expected 0xee1eca80 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 36261 dport 57543] != expected 0xb98e799 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 36261 dport 57543] != expected 0xb98e799 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 48633 dport 57543] != expected 0x89028f44 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 48633 dport 57543] != expected 0x89028f44 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 51593 dport 57543] != expected 0x82310852 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 51593 dport 57543] != expected 0x82310852 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60396 dport 57543] != expected 0xa96fcc8c # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 60396 dport 57543] != expected 0xa96fcc8c # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 54427 dport 57543] != expected 0xf37b0572 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 54427 dport 57543] != expected 0xf37b0572 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 40608 dport 57543] != expected 0x4baa22bb # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 40608 dport 57543] != expected 0x4baa22bb # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 42192 dport 57543] != expected 0x411caae7 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 42192 dport 57543] != expected 0x411caae7 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 39775 dport 57543] != expected 0x38a79122 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 39775 dport 57543] != expected 0x38a79122 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 48667 dport 57543] != expected 0x508204e8 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 48667 dport 57543] != expected 0x508204e8 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 53158 dport 57543] != expected 0xeaec9ed3 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 53158 dport 57543] != expected 0xeaec9ed3 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 44408 dport 57543] != expected 0xe0f3e1b2 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 44408 dport 57543] != expected 0xe0f3e1b2 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 33991 dport 57543] != expected 0x4b88f043 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 33991 dport 57543] != expected 0x4b88f043 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 39122 dport 57543] != expected 0xf7e8097a # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 39122 dport 57543] != expected 0xf7e8097a # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 53360 dport 57543] != expected 0x1cccb570 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 53360 dport 57543] != expected 0x1cccb570 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 57957 dport 57543] != expected 0x9b40deef # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 57957 dport 57543] != expected 0x9b40deef # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 48127 dport 57543] != expected 0xb6459d3b # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 48127 dport 57543] != expected 0xb6459d3b # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 40444 dport 57543] != expected 0xf0d0cc26 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 40444 dport 57543] != expected 0xf0d0cc26 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 35035 dport 57543] != expected 0xb6061798 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 35035 dport 57543] != expected 0xb6061798 # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 55033 dport 57543] != expected 0xb09cf5ec # # Exception| cpu 5: rx_hash 0xe8948813 [saddr 192.0.3.2 daddr 192.0.3.1 sport 55033 dport 57543] != expected 0xb09cf5ec # # 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 216, 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 47713 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 44 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43745 dport 47713] != expected 0xb63073e6 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43745 dport 47713] != expected 0xb63073e6 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 57344 dport 47713] != expected 0xe48ed499 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 57344 dport 47713] != expected 0xe48ed499 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52619 dport 47713] != expected 0x19dbb6 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52619 dport 47713] != expected 0x19dbb6 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41693 dport 47713] != expected 0x595da2c4 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41693 dport 47713] != expected 0x595da2c4 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36606 dport 47713] != expected 0xa9d7336f # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36606 dport 47713] != expected 0xa9d7336f # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44973 dport 47713] != expected 0xd0f6616d # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44973 dport 47713] != expected 0xd0f6616d # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43065 dport 47713] != expected 0x913b0df7 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43065 dport 47713] != expected 0x913b0df7 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35833 dport 47713] != expected 0x857a8ec1 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35833 dport 47713] != expected 0x857a8ec1 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34149 dport 47713] != expected 0xef103842 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 34149 dport 47713] != expected 0xef103842 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 47414 dport 47713] != expected 0x8c4cfe24 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 47414 dport 47713] != expected 0x8c4cfe24 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 50393 dport 47713] != expected 0x30e00bc7 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 50393 dport 47713] != expected 0x30e00bc7 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44275 dport 47713] != expected 0x67db92ba # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44275 dport 47713] != expected 0x67db92ba # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58476 dport 47713] != expected 0xfc73ec3f # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 58476 dport 47713] != expected 0xfc73ec3f # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37008 dport 47713] != expected 0x4faf24a5 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37008 dport 47713] != expected 0x4faf24a5 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41233 dport 47713] != expected 0x8384f839 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41233 dport 47713] != expected 0x8384f839 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56709 dport 47713] != expected 0x7948d77c # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56709 dport 47713] != expected 0x7948d77c # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38720 dport 47713] != expected 0xda2f216c # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38720 dport 47713] != expected 0xda2f216c # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 51507 dport 47713] != expected 0x30dfde18 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 51507 dport 47713] != expected 0x30dfde18 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39986 dport 47713] != expected 0xf05f5c37 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39986 dport 47713] != expected 0xf05f5c37 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53637 dport 47713] != expected 0xe06476bd # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53637 dport 47713] != expected 0xe06476bd # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 48406 dport 47713] != expected 0xa49c108d # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 48406 dport 47713] != expected 0xa49c108d # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36940 dport 47713] != expected 0x83f4a6f1 # # Exception| cpu 4: rx_hash 0x01c37de1 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 36940 dport 47713] != expected 0x83f4a6f1 # # 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 204, 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 88, 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 49, 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 204, 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 88, 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 49, 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 204, 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 88, 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 49, 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 204, 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 88, 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 49, 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 209, 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 101, 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 88, 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 49, 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 209, 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 101, 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 88, 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 49, 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 209, 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 101, 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 88, 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 49, 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 209, 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 101, 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 88, 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 49, 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__->