Re: [RFC, PATCH] locks: remove posix deadlock detection



On Sun, Oct 28, 2007 at 01:43:21PM -0400, J. Bruce Fields wrote:
We currently attempt to return -EDEALK to blocking fcntl() file locking
requests that would create a cycle in the graph of tasks waiting on
locks.

This is inefficient: in the general case it requires us determining
whether we're adding a cycle to an arbitrary directed acyclic graph.
And this calculation has to be performed while holding a lock (currently
the BKL) that prevents that graph from changing.

It has historically been a source of bugs; most recently it was noticed
that it could loop indefinitely while holding the BKL.

It can also return -EDEADLK spuriously. So yeah, just kill it.

--
Intel are signing my paycheques ... these opinions are still mine
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: [RFC, PATCH] locks: remove posix deadlock detection
    ... whether we're adding a cycle to an arbitrary directed acyclic graph. ... file locks; deadlocks involving network filesystems or other kinds ... It therefore seems best to remove deadlock detection. ...
    (Linux-Kernel)
  • counting cycles
    ... :> its meaning is perfectly clear and non-controversial. ... If you try to graph it, ... Except that this cycle IS infinite. ... It's hard to know what you even COULD mean by an infinite cycle. ...
    (sci.logic)
  • Re: Finding Euler paths..
    ... > Euler path in a graph taking input as the edges. ... check that there can exist a euler path in the graph. ... [For a Euler cycle, find any old cycle to start ... So, our original path shares no vertices with the first cycle, so we ...
    (comp.programming)
  • Re: [RFC, PATCH] locks: remove posix deadlock detection
    ... whether we're adding a cycle to an arbitrary directed acyclic graph. ... It seems unlikely to be useful to applications: ... file locks; deadlocks involving network filesystems or other kinds ... It therefore seems best to remove deadlock detection. ...
    (Linux-Kernel)
  • Re: Bug in IFileSourceFilter
    ... - one reads a MIDI with the AsyncFileReader ... WMASFReader (depending on how you build the graph) ... the Explorer on XP/2003 tries to preview the file ... when you select it and so it locks the file before you can ...
    (microsoft.public.win32.programmer.directx.audio)