public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Esben Nielsen <simlo@phys.au.dk>
Cc: Thomas Gleixner <tglx@linutronix.de>, linux-kernel@vger.kernel.org
Subject: Re: PI patch against 2.6.16-rt9
Date: Wed, 29 Mar 2006 14:35:26 +0200	[thread overview]
Message-ID: <20060329123526.GA4322@elte.hu> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0603290851320.12114-100000@lifa01.phys.au.dk>


* Esben Nielsen <simlo@phys.au.dk> wrote:

> The point is: It does not matter that is another chain!
> 
> It will _not_ boost any task which doesn't need boosting, because it 
> is not boosting according to current->prio but always 
> task->pi_waiters. So all it does is to fix the priorities on some 
> tasks. There is absolutely nothing wrong with that. [...]

doh, you are right, i missed that. All the state to do the boosting is 
contained in a single entry along the chain, so no prior information is 
needed.

the problem with deadlock detection remains though. Can we live with 
deadlock detection being a bit statistical? I think we can: deadlock 
detection is for _bugs_, no application should rely on it to provide 
actual functionality. (if it still does it will still work fine, but we 
dont design for them.) Also, if we walk long enough (say 1024 entries) 
the probability of a false positive ought to be pretty low. So i think 
the following type of deadlock detection ought to be pretty OK:

 - check whether we get back to 'current'.

 - check whether we exceed a configurable limit of steps

most 'sane' deadlocks will be detected quickly: they'll lead back to 
'current' and the kernel returns. On the off chance of the chain-walking 
getting lured into a completely unrelated chain the limit will catch it.

	Ingo

  reply	other threads:[~2006-03-29 12:37 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-26 23:42 PI patch against 2.6.16-rt9 Esben Nielsen
2006-03-26 23:47 ` Ingo Molnar
2006-03-27  0:07   ` Esben Nielsen
2006-03-27  0:11     ` Esben Nielsen
2006-03-27  0:21     ` Ingo Molnar
2006-03-27 15:00       ` Esben Nielsen
2006-03-27 23:05         ` Esben Nielsen
2006-03-28 21:02           ` Ingo Molnar
2006-03-28 20:55         ` Ingo Molnar
2006-03-28 21:17           ` Esben Nielsen
2006-03-28 21:24             ` Ingo Molnar
2006-03-28 22:51               ` Esben Nielsen
2006-03-29  7:14                 ` Ingo Molnar
2006-03-29  7:59                   ` Esben Nielsen
2006-03-29 12:35                     ` Ingo Molnar [this message]
2006-03-28 21:36             ` Thomas Gleixner
2006-03-28 22:23               ` Esben Nielsen
2006-03-28 22:42                 ` Thomas Gleixner
2006-03-28 23:34                   ` Esben Nielsen
2006-03-28 23:59                     ` Thomas Gleixner
2006-03-29 12:29                       ` Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060329123526.GA4322@elte.hu \
    --to=mingo@elte.hu \
    --cc=linux-kernel@vger.kernel.org \
    --cc=simlo@phys.au.dk \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox