< 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 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 34655 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 40 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 0: rx_hash 0x16ff79e6 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49396 dport 34655] != expected 0x6e923468 # # Exception| cpu 0: rx_hash 0xbfa8b656 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49434 dport 34655] != expected 0x7f2e39fb # # Exception| cpu 4: rx_hash 0xee15f912 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49410 dport 34655] != expected 0xefdbe8a8 # # Exception| cpu 4: rx_hash 0x78409439 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49480 dport 34655] != expected 0xee0c2373 # # Exception| cpu 5: rx_hash 0x5a2715cd [saddr 192.0.3.2 daddr 192.0.3.1 sport 49424 dport 34655] != expected 0x1d12de13 # # Exception| cpu 5: rx_hash 0x977611f4 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49450 dport 34655] != expected 0x3754d152 # # Exception| cpu 5: rx_hash 0xaadafafa [saddr 192.0.3.2 daddr 192.0.3.1 sport 49454 dport 34655] != expected 0x9e61268 # # Exception| cpu 5: rx_hash 0x1ee81625 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49468 dport 34655] != expected 0xfb2f24d3 # # Exception| cpu 5: rx_hash 0x45ec7f37 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49484 dport 34655] != expected 0xd0bee049 # # Exception| cpu 5: rx_hash 0x8a8745f4 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49500 dport 34655] != expected 0x5f125087 # # Exception| cpu 5: rx_hash 0x9ff50958 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49512 dport 34655] != expected 0x29da7b14 # # Exception| cpu 5: rx_hash 0xce48461c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49520 dport 34655] != expected 0xb92faa47 # # Exception| cpu 0: rx_hash 0x88bd7b0e [saddr 192.0.3.2 daddr 192.0.3.1 sport 49526 dport 34655] != expected 0xfaf8ef08 # # Exception| cpu 0: rx_hash 0x6a547544 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49542 dport 34655] != expected 0x609cbd8b # # Exception| cpu 0: rx_hash 0xde66999b [saddr 192.0.3.2 daddr 192.0.3.1 sport 49556 dport 34655] != expected 0x92558b30 # # Exception| cpu 0: rx_hash 0x0645d10e [saddr 192.0.3.2 daddr 192.0.3.1 sport 49562 dport 34655] != expected 0xcedbafe2 # # Exception| cpu 0: rx_hash 0xbaf4257d [saddr 192.0.3.2 daddr 192.0.3.1 sport 49610 dport 34655] != expected 0x229c331f # # Exception| cpu 4: rx_hash 0xf48200c3 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49550 dport 34655] != expected 0x7fc5dc16 # # Exception| cpu 4: rx_hash 0xe1f04c6f [saddr 192.0.3.2 daddr 192.0.3.1 sport 49594 dport 34655] != expected 0x90df785 # # Exception| cpu 4: rx_hash 0xfc01186f [saddr 192.0.3.2 daddr 192.0.3.1 sport 49612 dport 34655] != expected 0x614b7650 # # Exception| cpu 5: rx_hash 0x2e9b76ac [saddr 192.0.3.2 daddr 192.0.3.1 sport 49578 dport 34655] != expected 0x86a1474b # # Exception| cpu 5: rx_hash 0x39d304fa [saddr 192.0.3.2 daddr 192.0.3.1 sport 49588 dport 34655] != expected 0x5583d357 # # Exception| cpu 5: rx_hash 0x759f1fbe [saddr 192.0.3.2 daddr 192.0.3.1 sport 49626 dport 34655] != expected 0xad3083d1 # # Exception| cpu 5: rx_hash 0x336a22ac [saddr 192.0.3.2 daddr 192.0.3.1 sport 49628 dport 34655] != expected 0xeee7c69e # # Exception| cpu 5: rx_hash 0x5d41b81c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49642 dport 34655] != expected 0xe54a6b78 # # Exception| cpu 5: rx_hash 0x0cfcf758 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49650 dport 34655] != expected 0x75bfba2b # # Exception| cpu 0: rx_hash 0xaf8669d1 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49662 dport 34655] != expected 0x5454188c # # Exception| cpu 0: rx_hash 0xcd255c2c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49690 dport 34655] != expected 0x8ba99771 # # Exception| cpu 0: rx_hash 0x08f740b9 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49762 dport 34655] != expected 0xbf613276 # # Exception| cpu 4: rx_hash 0x3fe28de1 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49678 dport 34655] != expected 0x3ab7e485 # # Exception| cpu 4: rx_hash 0x53f329ab [saddr 192.0.3.2 daddr 192.0.3.1 sport 49682 dport 34655] != expected 0x94f0f6ec # # Exception| cpu 4: rx_hash 0x6e5fc2a5 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49686 dport 34655] != expected 0xaa4235d6 # # Exception| cpu 4: rx_hash 0x4c384351 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49742 dport 34655] != expected 0x595cc8b6 # # Exception| cpu 4: rx_hash 0xbeff929c [saddr 192.0.3.2 daddr 192.0.3.1 sport 49754 dport 34655] != expected 0xe842bb42 # # Exception| cpu 4: rx_hash 0xbcc5ac66 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49776 dport 34655] != expected 0x4da804cd # # Exception| cpu 5: rx_hash 0x44bb5bfd [saddr 192.0.3.2 daddr 192.0.3.1 sport 49676 dport 34655] != expected 0x47d262f0 # # Exception| cpu 5: rx_hash 0x46816507 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49702 dport 34655] != expected 0xe238dd7f # # Exception| cpu 5: rx_hash 0xe5fbfb8e [saddr 192.0.3.2 daddr 192.0.3.1 sport 49706 dport 34655] != expected 0xc3d37fd8 # # Exception| cpu 5: rx_hash 0x89ea5fc4 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49718 dport 34655] != expected 0x6d946db1 # # Exception| cpu 5: rx_hash 0xd2ee36d6 [saddr 192.0.3.2 daddr 192.0.3.1 sport 49734 dport 34655] != expected 0x4605a92b # # 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 0x78a58be3 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55940 dport 45702] OK # # # cpu 4: rx_hash 0xcbf1caed [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55916 dport 45702] OK # # # cpu 4: rx_hash 0x9d2a2878 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55950 dport 45702] OK # # # cpu 5: rx_hash 0xe11553b5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55926 dport 45702] OK # # # cpu 5: rx_hash 0x049af02e [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55932 dport 45702] OK # # # cpu 5: rx_hash 0x6fedf9b5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55962 dport 45702] OK # # # cpu 5: rx_hash 0x7026934f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56006 dport 45702] OK # # # cpu 0: rx_hash 0x3c6a880b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55976 dport 45702] OK # # # cpu 0: rx_hash 0x47335e17 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55978 dport 45702] OK # # # cpu 0: rx_hash 0x507b2c41 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 55988 dport 45702] OK # # # cpu 0: rx_hash 0x0b7f4553 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56004 dport 45702] OK # # # cpu 0: rx_hash 0x95a930d4 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56012 dport 45702] OK # # # cpu 0: rx_hash 0x5ac20a17 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56028 dport 45702] OK # # # cpu 0: rx_hash 0xeccad832 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56036 dport 45702] OK # # # cpu 0: rx_hash 0x7831fc8c [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56078 dport 45702] OK # # # cpu 0: rx_hash 0x6f798eda [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56080 dport 45702] OK # # # cpu 4: rx_hash 0x47a72978 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56096 dport 45702] OK # # # cpu 4: rx_hash 0x9f8461ed [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56110 dport 45702] OK # # # cpu 5: rx_hash 0x721cadb5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56044 dport 45702] OK # # # cpu 5: rx_hash 0xfb82aa64 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56058 dport 45702] OK # # # cpu 5: rx_hash 0x459d1782 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56074 dport 45702] OK # # # cpu 5: rx_hash 0xce392ea9 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56118 dport 45702] OK # # # cpu 5: rx_hash 0xa891acb5 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56130 dport 45702] OK # # # cpu 0: rx_hash 0x8af62d41 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56090 dport 45702] OK # # # cpu 0: rx_hash 0xee6491a7 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56132 dport 45702] OK # # # cpu 0: rx_hash 0xbfd9dee3 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56156 dport 45702] OK # # # cpu 0: rx_hash 0x97077941 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56172 dport 45702] OK # # # cpu 0: rx_hash 0x804f0b17 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56178 dport 45702] OK # # # cpu 4: rx_hash 0xec5eaf5d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56174 dport 45702] OK # # # cpu 4: rx_hash 0x1e997e90 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56186 dport 45702] OK # # # cpu 4: rx_hash 0x62a6055d [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56194 dport 45702] OK # # # cpu 4: rx_hash 0x8729a6c6 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56200 dport 45702] OK # # # cpu 5: rx_hash 0x210fab64 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56148 dport 45702] OK # # # cpu 5: rx_hash 0xaaab924f [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56168 dport 45702] OK # # # cpu 5: rx_hash 0xc3e6a52e [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56228 dport 45702] OK # # # cpu 0: rx_hash 0xba854dc8 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56204 dport 45702] OK # # # cpu 0: rx_hash 0xc1dc9bd4 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56206 dport 45702] OK # # # cpu 0: rx_hash 0xeb38028c [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56212 dport 45702] OK # # # cpu 0: rx_hash 0xfe4a4e20 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56224 dport 45702] OK # # # cpu 4: rx_hash 0x117ccbed [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56258 dport 45702] OK # # # cpu 4: rx_hash 0x0ac9c84b [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 56336 dport 45702] 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 57587 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 44 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 48948 dport 57587] != expected 0x72e5b112 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 48948 dport 57587] != expected 0x72e5b112 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 47448 dport 57587] != expected 0xd70b0a4 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 47448 dport 57587] != expected 0xd70b0a4 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 55310 dport 57587] != expected 0xa5be9f6e # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 55310 dport 57587] != expected 0xa5be9f6e # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 57163 dport 57587] != expected 0xa09560c5 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 57163 dport 57587] != expected 0xa09560c5 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 42993 dport 57587] != expected 0x1a123138 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 42993 dport 57587] != expected 0x1a123138 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 59433 dport 57587] != expected 0x643cf445 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 59433 dport 57587] != expected 0x643cf445 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 50716 dport 57587] != expected 0xd3a48b41 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 50716 dport 57587] != expected 0xd3a48b41 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 41470 dport 57587] != expected 0x4614ce44 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 41470 dport 57587] != expected 0x4614ce44 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 45453 dport 57587] != expected 0x3fa42cf0 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 45453 dport 57587] != expected 0x3fa42cf0 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 47819 dport 57587] != expected 0x4000b267 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 47819 dport 57587] != expected 0x4000b267 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 59982 dport 57587] != expected 0xd560ac33 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 59982 dport 57587] != expected 0xd560ac33 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 36556 dport 57587] != expected 0x106a33e8 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 36556 dport 57587] != expected 0x106a33e8 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 38067 dport 57587] != expected 0x4f534f1c # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 38067 dport 57587] != expected 0x4f534f1c # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 52635 dport 57587] != expected 0x84d5a317 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 52635 dport 57587] != expected 0x84d5a317 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 37785 dport 57587] != expected 0x4800ecda # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 37785 dport 57587] != expected 0x4800ecda # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 34136 dport 57587] != expected 0x4f1921ee # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 34136 dport 57587] != expected 0x4f1921ee # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 57503 dport 57587] != expected 0x757b96db # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 57503 dport 57587] != expected 0x757b96db # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 36448 dport 57587] != expected 0x47a25f31 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 36448 dport 57587] != expected 0x47a25f31 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 39887 dport 57587] != expected 0x4c8f6c09 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 39887 dport 57587] != expected 0x4c8f6c09 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 49995 dport 57587] != expected 0x883b27d7 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 49995 dport 57587] != expected 0x883b27d7 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 37068 dport 57587] != expected 0x94b9117c # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 37068 dport 57587] != expected 0x94b9117c # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 35483 dport 57587] != expected 0x130f5472 # # Exception| cpu 5: rx_hash 0x0b59a47f [saddr 192.0.3.2 daddr 192.0.3.1 sport 35483 dport 57587] != expected 0x130f5472 # # 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 42499 -i enp1s0 -T 4000 -s -v # # Exception| EXIT: 44 # # Exception| STDERR: RSS indirection table size: 256 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 54364 dport 42499] != expected 0xb6490d8d # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 54364 dport 42499] != expected 0xb6490d8d # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44026 dport 42499] != expected 0xf6915e2b # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44026 dport 42499] != expected 0xf6915e2b # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35496 dport 42499] != expected 0xcf687a75 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35496 dport 42499] != expected 0xcf687a75 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39610 dport 42499] != expected 0x3e95fd90 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39610 dport 42499] != expected 0x3e95fd90 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39134 dport 42499] != expected 0xb92d1c99 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 39134 dport 42499] != expected 0xb92d1c99 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41737 dport 42499] != expected 0x120cfc31 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 41737 dport 42499] != expected 0x120cfc31 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35215 dport 42499] != expected 0xea169c45 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35215 dport 42499] != expected 0xea169c45 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43406 dport 42499] != expected 0xbe4285e1 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43406 dport 42499] != expected 0xbe4285e1 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43235 dport 42499] != expected 0x2312572c # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 43235 dport 42499] != expected 0x2312572c # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53486 dport 42499] != expected 0x4b1eb780 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53486 dport 42499] != expected 0x4b1eb780 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53333 dport 42499] != expected 0xc91178d8 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53333 dport 42499] != expected 0xc91178d8 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44290 dport 42499] != expected 0xb3e8d0db # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 44290 dport 42499] != expected 0xb3e8d0db # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38980 dport 42499] != expected 0x2a24e299 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38980 dport 42499] != expected 0x2a24e299 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52332 dport 42499] != expected 0x50c61760 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52332 dport 42499] != expected 0x50c61760 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53075 dport 42499] != expected 0x2405be14 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 53075 dport 42499] != expected 0x2405be14 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37037 dport 42499] != expected 0xe45dd9db # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37037 dport 42499] != expected 0xe45dd9db # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38494 dport 42499] != expected 0xb2185889 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 38494 dport 42499] != expected 0xb2185889 # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35090 dport 42499] != expected 0xc959f36e # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 35090 dport 42499] != expected 0xc959f36e # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 54958 dport 42499] != expected 0x1828c0d # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 54958 dport 42499] != expected 0x1828c0d # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 46269 dport 42499] != expected 0x9eecfa6e # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 46269 dport 42499] != expected 0x9eecfa6e # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37498 dport 42499] != expected 0x7f3c820d # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 37498 dport 42499] != expected 0x7f3c820d # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52372 dport 42499] != expected 0x2cf96cad # # Exception| cpu 5: rx_hash 0x5558ea67 [saddr 2001:db8:1::2 daddr 2001:db8:1::1 sport 52372 dport 42499] != expected 0x2cf96cad # # 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__->