Commit 5a52f759 authored by David Johnson's avatar David Johnson

Pull the standard patch set forward to Rocky.

parent 2ab5204a
--- /usr/share/openstack-dashboard/openstack_dashboard/dashboards/project/static/dashboard/project/workflow/launch-instance/launch-instance-model.service.js~ 2017-08-30 05:08:44.000000000 -0600
+++ /usr/share/openstack-dashboard/openstack_dashboard/dashboards/project/static/dashboard/project/workflow/launch-instance/launch-instance-model.service.js 2017-11-30 12:29:31.341556532 -0700
@@ -200,7 +200,7 @@
// REQUIRED for JS logic (image | snapshot | volume | volume_snapshot)
source_type: null,
source: [],
- create_volume_default: true,
+ create_volume_default: false,
// REQUIRED for JS logic
vol_create: false,
// May be null
--- /usr/lib/python2.7/dist-packages/neutron/plugins/ml2/drivers/openvswitch/agent/openflow/native/ofswitch.py~ 2018-11-05 23:12:52.000000000 -0700
+++ /usr/lib/python2.7/dist-packages/neutron/plugins/ml2/drivers/openvswitch/agent/openflow/native/ofswitch.py 2019-05-06 13:37:54.939320705 -0600
@@ -127,30 +127,41 @@
if table_id is None:
table_id = ofp.OFPTT_ALL
+ cookie_masks = []
if cookie == ovs_lib.COOKIE_ANY:
cookie = 0
if cookie_mask != 0:
raise Exception("cookie=COOKIE_ANY but cookie_mask set to %s" %
cookie_mask)
+ cookies = set([f.cookie for f in self.dump_flows()]) - \
+ self.preserved_cookies
+ LOG.warning("Preserved cookies for %s: %s", self.br_name,
+ self.preserved_cookies)
+ for c in cookies:
+ cookie_masks.append((c,ovs_lib.UINT64_BITMASK))
elif cookie == COOKIE_DEFAULT:
- cookie = self._default_cookie
- cookie_mask = ovs_lib.UINT64_BITMASK
+ cookie_masks.append((self._default_cookie,ovs_lib.UINT64_BITMASK))
+ elif cookie in self.preserved_cookies:
+ return
- match = self._match(ofp, ofpp, match, **match_kwargs)
- if strict:
- cmd = ofp.OFPFC_DELETE_STRICT
- else:
- cmd = ofp.OFPFC_DELETE
- msg = ofpp.OFPFlowMod(dp,
- command=cmd,
- cookie=cookie,
- cookie_mask=cookie_mask,
- table_id=table_id,
- match=match,
- priority=priority,
- out_group=ofp.OFPG_ANY,
- out_port=ofp.OFPP_ANY)
- self._send_msg(msg, active_bundle=active_bundle)
+ for (_cookie,_mask) in cookie_masks:
+ match = self._match(ofp, ofpp, match, **match_kwargs)
+ if strict:
+ cmd = ofp.OFPFC_DELETE_STRICT
+ else:
+ cmd = ofp.OFPFC_DELETE
+ LOG.warning("Deleting flow with cookie 0x%(cookie)x",
+ {'cookie': _cookie})
+ msg = ofpp.OFPFlowMod(dp,
+ command=cmd,
+ cookie=_cookie,
+ cookie_mask=_mask,
+ table_id=table_id,
+ match=match,
+ priority=priority,
+ out_group=ofp.OFPG_ANY,
+ out_port=ofp.OFPP_ANY)
+ self._send_msg(msg)
def dump_flows(self, table_id=None):
(dp, ofp, ofpp) = self._get_dp()
--- /usr/lib/python2.7/dist-packages/neutron/plugins/ml2/drivers/openvswitch/agent/openflow/br_cookie.py~ 2018-11-05 23:12:44.000000000 -0700
+++ /usr/lib/python2.7/dist-packages/neutron/plugins/ml2/drivers/openvswitch/agent/openflow/br_cookie.py 2019-05-06 13:39:15.599229212 -0600
@@ -17,6 +17,8 @@
from neutron.agent.common import ovs_lib
+import os
+import os.path
class OVSBridgeCookieMixin(object):
'''Mixin to provide cookie retention functionality
@@ -26,6 +28,26 @@
def __init__(self, *args, **kwargs):
super(OVSBridgeCookieMixin, self).__init__(*args, **kwargs)
self._reserved_cookies = set()
+ self._preserved_cookies = set()
+
+ if not os.path.exists("/var/lib/neutron/ovs-default-flows.reserved_cookie"):
+ sc = self.request_cookie()
+ self._preserved_cookies.add(sc)
+ self._reserved_cookies.add(sc)
+ f = file("/var/lib/neutron/ovs-default-flows.reserved_cookie",'w')
+ f.write(str(sc))
+ f.close()
+ else:
+ f = file("/var/lib/neutron/ovs-default-flows.reserved_cookie",'r')
+ sc = int(f.read())
+ f.close()
+ self._preserved_cookies.add(sc)
+ self._reserved_cookies.add(sc)
+ pass
+
+ @property
+ def preserved_cookies(self):
+ return set(self._preserved_cookies)
@property
def reserved_cookies(self):
--- /usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py.orig 2018-05-17 14:32:56.000000000 -0600
+++ /usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py 2018-07-03 17:59:48.709498189 -0600
@@ -4602,7 +4602,8 @@
if (virt_type not in ("lxc", "uml", "parallels", "xen") or
(virt_type == "xen" and guest.os_type == fields.VMMode.HVM)):
- guest.features.append(vconfig.LibvirtConfigGuestFeatureACPI())
+ if caps.host.cpu.arch != 'aarch64' or guest.os_loader_type == "pflash":
+ guest.features.append(vconfig.LibvirtConfigGuestFeatureACPI())
guest.features.append(vconfig.LibvirtConfigGuestFeatureAPIC())
if (virt_type in ("qemu", "kvm") and
@@ -4820,7 +4821,7 @@
hw_firmware_type = image_meta.properties.get('hw_firmware_type')
if caps.host.cpu.arch == fields.Architecture.AARCH64:
if not hw_firmware_type:
- hw_firmware_type = fields.FirmwareType.UEFI
+ hw_firmware_type = fields.FirmwareType.BIOS
if hw_firmware_type == fields.FirmwareType.UEFI:
if self._has_uefi_support():
global uefi_logged
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment