[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110516212449.GJ2573@linux.vnet.ibm.com>
Date:	Mon, 16 May 2011 14:24:49 -0700
From:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
To:	Ingo Molnar <mingo@...e.hu>
Cc:	Yinghai Lu <yinghai@...nel.org>, linux-kernel@...r.kernel.org
Subject: Re: [GIT PULL rcu/next] rcu commits for 2.6.40
On Mon, May 16, 2011 at 02:23:29PM +0200, Ingo Molnar wrote:
> 
> * Ingo Molnar <mingo@...e.hu> wrote:
> 
> > > In the meantime, would you be willing to try out the patch at 
> > > https://lkml.org/lkml/2011/5/14/89?  This patch helped out Yinghai in 
> > > several configurations.
> > 
> > Wasn't this the one i tested - or is it a new iteration?
> > 
> > I'll try it in any case.
> 
> oh, this was a new iteration, mea culpa!
> 
> And yes, it solves all problems for me as well. Mind pushing it as a fix? :-)
;-)
Unfortunately, the only reason I can see that it works is (1) there
is some obscure bug in my code or (2) someone somewhere is failing to
call irq_exit() on some interrupt-exit path.  Much as I might be tempted
to paper this one over, I believe that we do need to find whatever the
underlying bug is.
Oh, yes, there is option (3) as well: maybe if an interrupt deschedules
a process, the final irq_exit() is omitted in favor of rcu_enter_nohz()?
But I couldn't see any evidence of this in my admittedly cursory scan
of the x86 interrupt-handling code.
So until I learn differently, I am assuming that each and every
irq_enter() has a matching call to irq_exit(), and that rcu_enter_nohz()
is called after the final irq_exit() of a given burst of interrupts.
If my assumptions are mistaken, please do let me know!
							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
 
