Re: [ovs-dev] [PATCH] ofproto-dpif: Destroy facets on ofproto removal.

2013-09-04 Thread Ben Pfaff
On Wed, Sep 04, 2013 at 12:20:26PM -0700, Ethan Jackson wrote: > > I'm pretty sure that the above will self-deadlock on > > ofproto->facets.rwlock, because facet_remove() write-locks it. > > > > My understanding is that the locking on this classifier is superfluous > > anyway since only a single th

Re: [ovs-dev] [PATCH] ofproto-dpif: Destroy facets on ofproto removal.

2013-09-04 Thread Ethan Jackson
> I'm pretty sure that the above will self-deadlock on > ofproto->facets.rwlock, because facet_remove() write-locks it. > > My understanding is that the locking on this classifier is superfluous > anyway since only a single thread accesses it--it's only there to > suppress Clang lock warnings--so I

Re: [ovs-dev] [PATCH] ofproto-dpif: Destroy facets on ofproto removal.

2013-09-04 Thread Ben Pfaff
On Wed, Sep 04, 2013 at 09:27:31AM -0700, Ethan Jackson wrote: > Facets maintain a pointer to their owning ofproto-dpif, and therefore > when an ofproto-dpif is destroyed all of their child facets should be > destroyed along with it. If they aren't, it's possible a subfacet > looked up in the dpif

[ovs-dev] [PATCH] ofproto-dpif: Destroy facets on ofproto removal.

2013-09-04 Thread Ethan Jackson
Facets maintain a pointer to their owning ofproto-dpif, and therefore when an ofproto-dpif is destroyed all of their child facets should be destroyed along with it. If they aren't, it's possible a subfacet looked up in the dpif-backer could access it's parent facet and therefore a defunct parent o