[ovs-git] [openvswitch/ovs] 900642: ofproto-dpif-xlate: Avoid deadlock on multicast sn...
GitHub
noreply at github.com
Mon Oct 15 17:52:29 UTC 2018
Branch: refs/heads/branch-2.10
Home: https://github.com/openvswitch/ovs
Commit: 9006428ea5f3ac4526aefd3f66ef6f11d1dbe1cd
https://github.com/openvswitch/ovs/commit/9006428ea5f3ac4526aefd3f66ef6f11d1dbe1cd
Author: Ben Pfaff <blp at ovn.org>
Date: 2018-10-15 (Mon, 15 Oct 2018)
Changed paths:
M ofproto/ofproto-dpif-xlate.c
Log Message:
-----------
ofproto-dpif-xlate: Avoid deadlock on multicast snooping recursion.
Until now, OVS did multicast snooping outputs holding the read-lock on
the mcast_snooping object. This could recurse via a patch port to try to
take the write-lock on the same object, which deadlocked. This patch fixes
the problem, by releasing the read-lock before doing any outputs.
It would probably be better to use RCU for mcast_snooping. That would be
a bigger patch and less suitable for backporting.
Reported-by: Sameh Elsharkawy
Reported-at: https://github.com/openvswitch/ovs-issues/issues/153
Signed-off-by: Ben Pfaff <blp at ovn.org>
**NOTE:** This service has been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/
Functionality will be removed from GitHub.com on January 31st, 2019.
More information about the git
mailing list