[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3efb10970712081248o43c19976k3bba552d835c81e7@mail.gmail.com>
Date: Sat, 8 Dec 2007 21:48:05 +0100
From: "Remy Bohmer" <linux@...mer.net>
To: "Ingo Molnar" <mingo@...e.hu>
Cc: "Peter Zijlstra" <peterz@...radead.org>,
"Daniel Walker" <dwalker@...sta.com>,
"Steven Rostedt" <rostedt@...dmis.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
"Dave Chinner" <dgc@....com>
Subject: Re: lockdep problem conversion semaphore->mutex (dev->sem)
Hello Ingo,
> no, you are wrong. If you want to do complex locking, you can still do
> it: take a look at the dev->sem conversion patches from Peter which
> correctly do this. Lockdep has all the facilities for that.
> (you just dont know about them)
Ok.
> the general policy message here is: do not implement complex locking. It
> hurts. It's hard to maintain. It's easy to mess up and leads to bugs.
Agree
> Lockdep just makes that plain obvious.
> Your mail and your frustration shows this general concept in happy
Please, do not see it as frustration, because it isn't...
I just want to understand it better.
> action: judging from your comments you have little clue about dev->sem
> locking and its implications and you'd happily go along and pollute the
> kernel with complex and hard to maintain nested locking constructs.
Now, you assume that i would _like_ complex locking. This is not true.
I just want to understand what was so wrong with dev->sem, I even read
in the discussions before about dev->sem, that it still was on the old
semaphore interface to get around lockdep issues, and _that_ is wrong.
That is bug-hiding from either the code or the tool. I just wanted to
understand if this was a lockdep bug, or a real code bug.
> Lockdep prevents you from doing it mindlessly, it _forces_ you to first
> understand the data structures, their locking and their relationship
> with each other. Then you can implement complexity, if you still want
> it.
>
> That, Sir, is a Good Thing (tm).
Completely agree.
Remy
--
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