[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140513203619.GV18164@linux.vnet.ibm.com>
Date: Tue, 13 May 2014 13:36:19 -0700
From: "Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: Thomas Gleixner <tglx@...utronix.de>,
Peter Zijlstra <peterz@...radead.org>,
Lai Jiangshan <laijs@...fujitsu.com>,
LKML <linux-kernel@...r.kernel.org>,
Dave Jones <davej@...hat.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Darren Hart <darren@...art.com>,
Davidlohr Bueso <davidlohr@...com>,
Ingo Molnar <mingo@...nel.org>,
Clark Williams <williams@...hat.com>,
Roland McGrath <roland@...k.frob.com>,
Carlos ODonell <carlos@...hat.com>,
Jakub Jelinek <jakub@...hat.com>,
Michael Kerrisk <mtk.manpages@...il.com>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Subject: Re: [patch 1/3] rtmutex: Add missing deadlock check
On Tue, May 13, 2014 at 04:20:41PM -0400, Steven Rostedt wrote:
> On Tue, 13 May 2014 21:42:54 +0200 (CEST)
> Thomas Gleixner <tglx@...utronix.de> wrote:
>
> > 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.
>
> Thank God. /me removes the ton of trace_printk()s in the code as well
> as all the trace_marker.write("%s" %(line)) from the test to figure out
> what was going on.
>
> >
> > 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?
> >
>
> What about having a module that creates a bunch of threads and forces
> all the scenarios that we want to test? Wouldn't it be easier to do
> than to have a userspace interface to dictate commands to the kernel?
I second this approach! The kernel environment makes it -much- easier
to force races and other conditions, which turns into much simpler and
more effective tests.
Thanx, Paul
--
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