Re: [Linux-ia64] Linux kernel deadlock caused by spinlock bug
Matthew Wilcox (firstname.lastname@example.org)
Mon, 29 Jul 2002 21:46:56 +0100
On Mon, Jul 29, 2002 at 03:37:17PM -0500, Van Maren, Kevin wrote:
> I changed the code to allow the writer bit to remain set even if
> there is a reader. By only allowing a single processor to set
> the writer bit, I don't have to worry about pending writers starving
> out readers. The potential writer that was able to set the writer bit
> gains ownership of the lock when the current readers finish. Since
> the retry for read_lock does not keep trying to increment the reader
> count, there are no other required changes.
however, this is broken. linux relies on being able to do
if a writer comes between those two read locks, you're toast.
i suspect the right answer for the contention you're seeing is an improved
get_timeofday which is lockless.
Revolutions do not require corporate support.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to email@example.com
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/