[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1121149: pyroute2: autopkgtest regression on s390x



Source: pyroute2
Version: 0.8.1-2
Severity: serious
User: debian-ci@lists.debian.org
Usertags: regression
X-Debbugs-CC: debian-s390@lists.debian.org
User: debian-s390@lists.debian.org
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

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature


Reply to: