diff options
| author | Soren Hansen <soren@linux2go.dk> | 2011-03-22 15:16:08 +0100 |
|---|---|---|
| committer | Soren Hansen <soren@linux2go.dk> | 2011-03-22 15:16:08 +0100 |
| commit | de2ecf115ff0baf43fa530807997513c728ffdaf (patch) | |
| tree | 87e909d3bd5e0926cb62a54e77e9564efb956976 | |
| parent | 804083b6ba811834c0bf9d5e2edcdf0130d7d1ce (diff) | |
| download | nova-de2ecf115ff0baf43fa530807997513c728ffdaf.tar.gz nova-de2ecf115ff0baf43fa530807997513c728ffdaf.tar.xz nova-de2ecf115ff0baf43fa530807997513c728ffdaf.zip | |
Fix locking problem in security group refresh code.
| -rw-r--r-- | nova/virt/libvirt_conn.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/nova/virt/libvirt_conn.py b/nova/virt/libvirt_conn.py index 902866167..fcd78b3b2 100644 --- a/nova/virt/libvirt_conn.py +++ b/nova/virt/libvirt_conn.py @@ -1766,12 +1766,15 @@ class IptablesFirewallDriver(FirewallDriver): def refresh_security_group_members(self, security_group): pass - @utils.synchronized('iptables', external=True) def refresh_security_group_rules(self, security_group): + self.do_refresh_security_group_rules(security_group) + self.iptables.apply() + + @utils.synchronized('iptables', external=True) + def do_refresh_security_group_rules(self, security_group): for instance in self.instances.values(): self.remove_filters_for_instance(instance) self.add_filters_for_instance(instance) - self.iptables.apply() def _security_group_chain_name(self, security_group_id): return 'nova-sg-%s' % (security_group_id,) |
