[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0710282349470.18815@twin.jikos.cz>
Date: Sun, 28 Oct 2007 23:55:52 +0100 (CET)
From: Jiri Kosina <jikos@...os.cz>
To: Matthew Wilcox <matthew@....cx>
cc: Trond Myklebust <trond.myklebust@....uio.no>,
Alan Cox <alan@...rguk.ukuu.org.uk>,
"J. Bruce Fields" <bfields@...ldses.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org,
"George G. Davis" <gdavis@...sta.com>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-fsdevel@...r.kernel.org
Subject: Re: [RFC, PATCH] locks: remove posix deadlock detection
On Sun, 28 Oct 2007, Matthew Wilcox wrote:
> Bzzt. You get a false deadlock with multiple threads like so:
> Thread A of task B takes lock 1
> Thread C of task D takes lock 2
> Thread C of task D blocks on lock 1
> Thread E of task B blocks on lock 2
A potential for deadlock occurs if a process controlling a locked
region is put to sleep by attempting to lock another process'
locked region. If the system detects that sleeping until a locked
region is unlocked would cause a deadlock, fcntl() shall fail with
an [EDEADLK] error.
This is what POSIX says [1], even after being modified with respect to
POSIX Threads Extension, right?
So it doesn't deal with threads at all, just processess are taken into
account. Probably for a reason :)
[1] http://www.opengroup.org/onlinepubs/009695399/functions/fcntl.html
--
Jiri Kosina
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists