Re: [RT] bad BUG_ON in rtmutex.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2006-04-18 at 10:32 -0400, Steven Rostedt wrote:

> 
> Actually, where that BUG_ON was is the exiting of the chain walk. So it
> does stop.  It's the higher priority task that needs to be continuing
> the chain walk for that problem to occur.  So really, it already does
> what you suggest :)

I bet you could test for that condition in some other spots too . Like
when it adds to the pi_waiters , you could test if the priorities are
out of sync ..

> > 
> > > To keep latencies down, we are letting the PI chain walk be preempted,
> > > by releasing locks.  It's understood that the chain can then change
> > > while walking (big debate about this between Ingo, tglx and Esben).  But
> > > at the end, we decided on it being better to have latencies down, and
> > > just make adjustments when they arise.  This also keeps the latencies
> > > bounded, since the old way was harder to know the worst case (PI chain
> > > creep).
> > 
> > I can imagine. Seems like PI is always a point of controversy .
> 
> But, as PI matures, it seems to be more and more acceptable.

	I read an article on priority ceiling as another method of doing this.
Priority ceiling doesn't seem better, but at the same time I can't
imagine how you'd implement it in Linux, or not in a straight forward
way .

> Also, I always test on SMP (then I test on UP) and the chain walkers
> were on two CPUs.

Yeah, best policy, I've learned ..

Daniel

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux