[Ocfs2-devel] [PATCH] ocfs2: fix __ocfs2_cluster_lock() dead lock

Wengang Wang wen.gang.wang at oracle.com
Wed Jan 13 01:36:49 PST 2010


On 10-01-13 01:31, Joel Becker wrote:
> > > > before update_holders, the lock could be DCed(since no BUSY flag set by
> > > > here).
> > > > 
> > > > and even after update_holders, the lock could be DCed too.
> > > > 
> > > > so that we get ocfs2_cluster_lock()(with holders increased) returned sucessfully
> > > > but actually we don't hold the dlm lock. --thus more than one node is
> > > > considering that they have the (EX) lock.
> > > 
> > > 	You make a good point.  I don't like the solution you propose,
> > > though.  Another flag that's almost the same?  Eww!  There's got to be a
> > > better way.
> > cool! expecting your patch...
> 
> 	Don't have one yet.  We can't rely on the spinlock, because we
> have to sleep on BUSY.  We relied on the spinblock before because we
> allowed the UC->DC->UC->DC livelock to happen.
> 
then I feel it's going to be a big change.
so that the author shouldn't be me, add me as something like bug-found-by if you like
:)

regards,
wengang.



More information about the Ocfs2-devel mailing list