Bug#1121149: pyroute2: autopkgtest regression on s390x
Paul Gevers <[email protected]>
| Newsgroups | gmane.linux.debian.ports.s390 |
|---|---|
| Message-ID | <5cb29bd2-fcfd-48d3-8e91-e80c0c520a6f__36529.6956662618$1763759253$gmane$org@debian.org> |
Source: pyroute2 Version: 0.8.1-2 Severity: serious User: [email protected] Usertags: regression X-Debbugs-CC: [email protected] User: [email protected] Usertags: s390x Control: -1 blocks 1119644 Dear maintainer(s), With a recent upload of pyroute2 the autopkgtest of pyroute2 fails in testing when that autopkgtest is run with the binary packages of pyroute2 from unstable on s390x. It passes when run with only packages from testing. In tabular form: pass fail pyroute2 from testing 0.8.1-2 all others from testing from testing I copied some of the output at the bottom of this report. Currently this regression is blocking the migration to testing [1]. Can you please investigate the situation and fix it? More information about this bug and the reason for filing it can be found on https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation Paul [1] https://qa.debian.org/excuses.php?package=pyroute2 https://ci.debian.net/data/autopkgtest/testing/s390x/p/pyroute2/66417437/log.gz al(sample, marshal): 96s > return run_using_marshal(sample, marshal) 96s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:48: 96s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 96s 96s sample = 'test_unit/test_nlmsg/iw_info_rsp.dump' 96s marshal = <pyroute2.netlink.nl80211.MarshalNl80211 object at 0x3ffa9c10980> 96s 96s def run_using_marshal(sample, marshal): 96s messages, data = load_sample(sample) 96s parsed = tuple(marshal.parse(data)) 96s > assert len(parsed) == len(messages) 96s E AssertionError: assert 0 == 1 96s E + where 0 = len(()) 96s E + and 1 = len([{'attrs': [['NL80211_ATTR_IFINDEX', 3], ['NL80211_ATTR_IFNAME', 'wlo1'], ['NL80211_ATTR_WIPHY', 0], ['NL80211_ATTR_IFTYPE', 2], ['NL80211_ATTR_WDEV', 1], ['NL80211_ATTR_MAC', 'a4:4e:31:43:1c:7d'], ...], 'cmd': 7, 'event': 'NL80211_CMD_NEW_INTERFACE', 'header': {'error': None, 'flags': 0, 'length': 88, 'pid': 771783666, ...}, ...}]) 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:31: AssertionError 96s _________ test_marshal[test_unit/test_nlmsg/iw_scan_rsp.dump-marshal3] _________ 96s 96s sample = 'test_unit/test_nlmsg/iw_scan_rsp.dump' 96s marshal = <pyroute2.netlink.nl80211.MarshalNl80211 object at 0x3ffa9cf4550> 96s 96s @pytest.mark.parametrize( 96s 'sample,marshal', 96s ( 96s ('test_unit/test_nlmsg/addrmsg_ipv4.dump', MarshalRtnl()), 96s ('test_unit/test_nlmsg/gre_01.dump', MarshalRtnl()), 96s ('test_unit/test_nlmsg/iw_info_rsp.dump', MarshalNl80211()), 96s ('test_unit/test_nlmsg/iw_scan_rsp.dump', MarshalNl80211()), 96s ), 96s ) 96s def test_marshal(sample, marshal): 96s > return run_using_marshal(sample, marshal) 96s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:48: 96s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 96s 96s sample = 'test_unit/test_nlmsg/iw_scan_rsp.dump' 96s marshal = <pyroute2.netlink.nl80211.MarshalNl80211 object at 0x3ffa9cf4550> 96s 96s def run_using_marshal(sample, marshal): 96s messages, data = load_sample(sample) 96s parsed = tuple(marshal.parse(data)) 96s > assert len(parsed) == len(messages) 96s E AssertionError: assert 0 == 4 96s E + where 0 = len(()) 96s E + and 4 = len(({'attrs': [('NL80211_ATTR_GENERATION', 7), ('NL80211_ATTR_IFINDEX', 11), ('NL80211_ATTR_WDEV', 1), ('NL80211_ATTR_BSS', {'attrs': [(...), (...), (...), (...), (...), (...), ...]})], 'cmd': 34, 'event': 'NL80211_CMD_NEW_SCAN_RESULTS', 'header': {'error': None, 'flags': 2, 'length': 472, 'pid': 608, ...}, ...}, {'attrs': [('NL80211_ATTR_GENERATION', 7), ('NL80211_ATTR_IFINDEX', 11), ('NL80211_ATTR_WDEV', 1), ('NL80211_ATTR_BSS', {'attrs': [(...), (...), (...), (...), (...), (...), ...]})], 'cmd': 34, 'event': 'NL80211_CMD_NEW_SCAN_RESULTS', 'header': {'error': None, 'flags': 2, 'length': 464, 'pid': 608, ...}, ...}, {'attrs': [('NL80211_ATTR_GENERATION', 7), ('NL80211_ATTR_IFINDEX', 11), ('NL80211_ATTR_WDEV', 1), ('NL80211_ATTR_BSS', {'attrs': [(...), (...), (...), (...), (...), (...), ...]})], 'cmd': 34, 'event': 'NL80211_CMD_NEW_SCAN_RESULTS', 'header': {'error': None, 'flags': 2, 'length': 480, 'pid': 608, ...}, ...}, {'attrs': [('NL80211_ATTR_GENERATION', 7), ('NL80211_ATTR_IFINDEX', 11), ('NL80211_ATTR_WDEV', 1), ('NL80211_ATTR_BSS', {'attrs': [(...), (...), (...), (...), (...), (...), ...]})], 'cmd': 34, 'event': 'NL80211_CMD_NEW_SCAN_RESULTS', 'header': {'error': None, 'flags': 2, 'length': 480, 'pid': 608, ...}, ...})) 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:31: AssertionError 96s _______ test_custom_key[test_unit/test_nlmsg/addrmsg_ipv4.dump-marshal0] _______ 96s 96s sample = 'test_unit/test_nlmsg/addrmsg_ipv4.dump' 96s marshal = <pyroute2.netlink.rtnl.marshal.MarshalRtnl object at 0x3ffa9cf4690> 96s 96s @pytest.mark.parametrize( 96s 'sample,marshal', 96s ( 96s ('test_unit/test_nlmsg/addrmsg_ipv4.dump', MarshalRtnl()), 96s ('test_unit/test_nlmsg/gre_01.dump', MarshalRtnl()), 96s ), 96s ) 96s def test_custom_key(sample, marshal): 96s # the header: 96s # 96s # uint32 length 96s # uint16 type 96s # ... 96s # 96s # e.g.: 96s # 4c:00:00:00:14:00:... 96s # 96s # this test uses: 96s marshal.key_format = 'I' # 4 bytes LE as the key 96s marshal.key_offset = 2 # but with offset 2 96s marshal.key_mask = 0xFFFF0000 # ignore 2 lower bytes: 96s # 96s # example 1: 96s # offset 2 -> 00:00:14:00 96s # format I -> 0x140000 96s # & mask -> 0x140000 96s # 96s # example 2: 96s # offset 2 -> 01:02:14:00 96s # format I -> 0x140201 96s # & mask -> 0x140000 96s # 96s # fix msg map to use new keys: 96s for key, value in tuple(marshal.msg_map.items()): 96s marshal.msg_map[key << 16] = value 96s # 96s # ok, now should run 96s > return run_using_marshal(sample, marshal) 96s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:88: 96s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 96s 96s sample = 'test_unit/test_nlmsg/addrmsg_ipv4.dump' 96s marshal = <pyroute2.netlink.rtnl.marshal.MarshalRtnl object at 0x3ffa9cf4690> 96s 96s def run_using_marshal(sample, marshal): 96s messages, data = load_sample(sample) 96s parsed = tuple(marshal.parse(data)) 96s > assert len(parsed) == len(messages) 96s E AssertionError: assert 0 == 1 96s E + where 0 = len(()) 96s E + and 1 = len([{'attrs': [['IFA_ADDRESS', '127.0.0.1'], ['IFA_LOCAL', '127.0.0.1'], ['IFA_LABEL', 'lo'], ['IFA_FLAGS', 128], ['IFA_CACHEINFO', {'cstamp': 261, 'ifa_preferred': 4294967295, 'ifa_valid': 4294967295, 'tstamp': 261}]], 'event': 'RTM_NEWADDR', 'family': 2, 'flags': 128, ...}]) 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:31: AssertionError 96s __________ test_custom_key[test_unit/test_nlmsg/gre_01.dump-marshal1] __________ 96s 96s sample = 'test_unit/test_nlmsg/gre_01.dump' 96s marshal = <pyroute2.netlink.rtnl.marshal.MarshalRtnl object at 0x3ffa9c9da70> 96s 96s @pytest.mark.parametrize( 96s 'sample,marshal', 96s ( 96s ('test_unit/test_nlmsg/addrmsg_ipv4.dump', MarshalRtnl()), 96s ('test_unit/test_nlmsg/gre_01.dump', MarshalRtnl()), 96s ), 96s ) 96s def test_custom_key(sample, marshal): 96s # the header: 96s # 96s # uint32 length 96s # uint16 type 96s # ... 96s # 96s # e.g.: 96s # 4c:00:00:00:14:00:... 96s # 96s # this test uses: 96s marshal.key_format = 'I' # 4 bytes LE as the key 96s marshal.key_offset = 2 # but with offset 2 96s marshal.key_mask = 0xFFFF0000 # ignore 2 lower bytes: 96s # 96s # example 1: 96s # offset 2 -> 00:00:14:00 96s # format I -> 0x140000 96s # & mask -> 0x140000 96s # 96s # example 2: 96s # offset 2 -> 01:02:14:00 96s # format I -> 0x140201 96s # & mask -> 0x140000 96s # 96s # fix msg map to use new keys: 96s for key, value in tuple(marshal.msg_map.items()): 96s marshal.msg_map[key << 16] = value 96s # 96s # ok, now should run 96s > return run_using_marshal(sample, marshal) 96s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:88: 96s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 96s 96s sample = 'test_unit/test_nlmsg/gre_01.dump' 96s marshal = <pyroute2.netlink.rtnl.marshal.MarshalRtnl object at 0x3ffa9c9da70> 96s 96s def run_using_marshal(sample, marshal): 96s messages, data = load_sample(sample) 96s parsed = tuple(marshal.parse(data)) 96s > assert len(parsed) == len(messages) 96s E AssertionError: assert 0 == 2 96s E + where 0 = len(()) 96s E + and 2 = len([{'attrs': [['IFLA_IFNAME', 'mgre0'], ['IFLA_LINKINFO', {'attrs': [[...], [...]]}]], 'change': 0, 'event': 'RTM_NEWLINK', 'family': 0, ...}, {'event': 'NLMSG_ERROR', 'header': {'error': None, 'flags': 0, 'length': 36, 'pid': 12277, ...}}]) 96s 96s tests/test_unit/test_nlmsg/test_marshal.py:31: AssertionError 96s =========================== short test summary info ============================ 96s FAILED tests/test_unit/test_nlmsg/test_map_adapter.py::test_decode_adapter[default_decode] 96s FAILED tests/test_unit/test_nlmsg/test_map_adapter.py::test_decode_adapter[dict_decode] 96s FAILED tests/test_unit/test_nlmsg/test_marshal.py::test_marshal[test_unit/test_nlmsg/addrmsg_ipv4.dump-marshal0] 96s FAILED tests/test_unit/test_nlmsg/test_marshal.py::test_marshal[test_unit/test_nlmsg/gre_01.dump-marshal1] 96s FAILED tests/test_unit/test_nlmsg/test_marshal.py::test_marshal[test_unit/test_nlmsg/iw_info_rsp.dump-marshal2] 96s FAILED tests/test_unit/test_nlmsg/test_marshal.py::test_marshal[test_unit/test_nlmsg/iw_scan_rsp.dump-marshal3] 96s FAILED tests/test_unit/test_nlmsg/test_marshal.py::test_custom_key[test_unit/test_nlmsg/addrmsg_ipv4.dump-marshal0] 96s FAILED tests/test_unit/test_nlmsg/test_marshal.py::test_custom_key[test_unit/test_nlmsg/gre_01.dump-marshal1] 96s ========================= 8 failed, 95 passed in 0.51s ========================= 96s autopkgtest [09:46:36]: test unittests
OpenPGP_signature.asc
(application/pgp-signature, 585 B)
-----BEGIN PGP SIGNATURE----- wsC7BAABCABvBYJpINQlCRCcXJnrBb11CkcUAAAAAAAeACBzYWx0QG5vdGF0aW9u cy5zZXF1b2lhLXBncC5vcmerV/aDRxNTdTZOgDtNLLwmbNRH0BTLryfxkw9LsK9/ wRYhBFi2bUhza+k7BS3mcpxcmesFvXUKAADIzwf9FeS04AXbNS/Xuu7z69Tr2o8O 6FzkZJhKmlZKE496rJcooPgOJcveqP2BGYcJcvSKQNsFxHDFrDNKUSOyCcoH3St2 6HgckMHVbMGIFb8Q9hBtLx72znJLm1qo/LgfyEU1smkDJJqGSqDM3As4MIMi/OK0 wbsJby6AEcND9X28LmxiO7WC5j0ZIZjQh6ob6HzyMRIL4ocOZjMwPtUMJ+a9JWL6 4n/LxlGphUq+4dTHp6jS0oDFcI6NQ5LQ485/WNpNbcRmku+64P3xa2ByflOMhC04 KRKFSwH1Sy8PQK5NCLtH7PSCo2sz5TVoE2KecmxZ1xSjTP7qp/oQy9SKuVaVYA== =KTwJ -----END PGP SIGNATURE-----