Reviewed: https://review.openstack.org/629335 Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=c6d358d4c6926638fe9d5194e3da112c2750c6a4 Submitter: Zuul Branch: master
commit c6d358d4c6926638fe9d5194e3da112c2750c6a4 Author: Ben Nemec <[email protected]> Date: Tue Jan 8 23:59:10 2019 +0000 Define types for C calls in netlink_lib Previously this was not done, which meant all arguments were assumed to be ints. As long as we didn't get any large pointer addresses this worked fine, but for some reason the addition of threading to oslo.privsep triggered larger addresses that were then truncated. This caused segfaults in the underlying C library because we were passing it invalid pointers. This change sets argument and return types for all of the calls that are used in the module. Change-Id: I9dbbb01eac8cf7cded7794f8ba69797d6357eeec Closes-Bug: 1810518 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1810518 Title: neutron-functional tests failing with oslo.privsep 1.31 Status in neutron: Fix Released Status in oslo.privsep: Invalid Bug description: Example of failure: http://logs.openstack.org/99/597599/7/gate /neutron-functional/87a8d1c/logs/testr_results.html.gz It's similar error in all tests: DEBUG [stevedore.extension] found extension EntryPoint.parse('kombu = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('fake = oslo_messaging._drivers.impl_fake:FakeDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('rabbit = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('amqp = oslo_messaging._drivers.impl_amqp1:ProtonDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kafka = oslo_messaging._drivers.impl_kafka:KafkaDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kombu = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('fake = oslo_messaging._drivers.impl_fake:FakeDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('rabbit = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('amqp = oslo_messaging._drivers.impl_amqp1:ProtonDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kafka = oslo_messaging._drivers.impl_kafka:KafkaDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kombu = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('fake = oslo_messaging._drivers.impl_fake:FakeDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('rabbit = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('amqp = oslo_messaging._drivers.impl_amqp1:ProtonDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kafka = oslo_messaging._drivers.impl_kafka:KafkaDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kombu = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('fake = oslo_messaging._drivers.impl_fake:FakeDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('rabbit = oslo_messaging._drivers.impl_rabbit:RabbitDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('amqp = oslo_messaging._drivers.impl_amqp1:ProtonDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('kafka = oslo_messaging._drivers.impl_kafka:KafkaDriver') DEBUG [stevedore.extension] found extension EntryPoint.parse('neutron = neutron.conf.policies:list_rules') DEBUG [neutron.policy] Loaded default policies from ['neutron'] under neutron.policies entry points DEBUG [oslo_policy.policy] The policy file policy.json could not be found. }}} traceback-1: {{{ Traceback (most recent call last): File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/fixtures/fixture.py", line 208, in setUp raise SetupError(details) fixtures.fixture.SetupError: {} }}} traceback-2: {{{ Traceback (most recent call last): File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/fixtures/fixture.py", line 208, in setUp raise SetupError(details) fixtures.fixture.SetupError: {} }}} traceback-3: {{{ Traceback (most recent call last): File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/fixtures/fixture.py", line 208, in setUp raise SetupError(details) fixtures.fixture.SetupError: {} }}} Traceback (most recent call last): File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/fixtures/fixture.py", line 197, in setUp self._setUp() File "neutron/tests/common/net_helpers.py", line 571, in _setUp self.ip_wrapper = ip.ensure_namespace(self.name) File "neutron/agent/linux/ip_lib.py", line 224, in ensure_namespace if not self.netns.exists(name): File "neutron/agent/linux/ip_lib.py", line 778, in exists return network_namespace_exists(name) File "neutron/agent/linux/ip_lib.py", line 982, in network_namespace_exists output = list_network_namespaces(**kwargs) File "neutron/agent/linux/ip_lib.py", line 971, in list_network_namespaces return privileged.list_netns(**kwargs) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/oslo_privsep/priv_context.py", line 214, in _wrap return self.channel.remote_call(name, args, kwargs) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/oslo_privsep/daemon.py", line 194, in remote_call result = self.send_recv((Message.CALL.value, name, args, kwargs)) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/oslo_privsep/comm.py", line 163, in send_recv self.writer.send((myid, msg)) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/oslo_privsep/comm.py", line 55, in send self.writesock.sendall(buf) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/eventlet/greenio/base.py", line 401, in sendall tail = self.send(data, flags) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/eventlet/greenio/base.py", line 395, in send return self._send_loop(self.fd.send, data, flags) File "/opt/stack/new/neutron/.tox/dsvm-functional/local/lib/python2.7/site-packages/eventlet/greenio/base.py", line 382, in _send_loop return send_method(data, *args) socket.error: [Errno 32] Broken pipe To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1810518/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

