Re: [patch 1/3] rtmutex: Add missing deadlock check

From: Thomas Gleixner
Date: Tue May 13 2014 - 15:43:09 EST


On Tue, 13 May 2014, Peter Zijlstra wrote:
>
> Now, if you and Steve get this sorted, nothing really happened except
> that Thomas got grumpy, which is entirely normal, what else would he be?
> :-)

Who is that grumpy Thomas dude, should I know him?

Lai, Steven,

before you waste lots of time on the tester, I want to look at it
whether we can simplify it or even rewrite it from scratch. I glanced
at it today and I really can't remember what kind of substances were
involved when I wrote this almost a decade ago.

The whole schedule_rt_mutex mechanism was mostly done to create
controlled lock stealing scenarios and deal with the BKL
oddities.

With Lai's simplification and the demise of BKL I'm quite sure we do
not need it anymore.

So we can just get rid of the complexity in schedule_rt_mutex() and
replace it with a simple:

while (!td->continue)
schedule();

That would also make the teardown and reset of the whole thing
manageable. Right now it's easy to create a situation where unrolling
stuff gets almost impossible except by pushing the reset button.

The state readouts can be done directly via the rtmutexes and the task
structs.

Thoughts?

Thanks,

tglx
--
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/