From: Jan Kiszka <jan.kiszka@domain.hid>
To: rpm@xenomai.org
Cc: xenomai@xenomai.org
Subject: [Xenomai-core] Re: [RFC] tame the watchdog
Date: Wed, 02 Aug 2006 13:04:43 +0200 [thread overview]
Message-ID: <44D086CB.5020603@domain.hid> (raw)
In-Reply-To: <1154508768.4983.46.camel@domain.hid>
[-- Attachment #1: Type: text/plain, Size: 2422 bytes --]
Philippe Gerum wrote:
> On Tue, 2006-08-01 at 16:45 +0200, Jan Kiszka wrote:
>> Philippe Gerum wrote:
>>>> Still, reinitializing X while the latency test runs causes
>>>> the latter to hang, albeit LOC is still flowing properly and the box
>>>> keeps going normally.
>>> This one was due to the nucleus watchdog which triggered right after the
>>> graphic mode was fully initialized, due to the huge amount of
>>> unpreemptible time spent doing this; this caused the sampling task to be
>>> detected as a runaway thread. So the behaviour is ok, albeit a bit
>>> frightening at first.
>>>
>> That reminds of the unfortunate characteristics of the 2.6 oom-killer:
>> unless you set your time-critical app's oom_adj to -17, you are never
>> really safe from being killed accidentally on low-mem scenarios.
>>
>> What about introducing some mechanism to protect audited tasks against
>> the watchdog? A simple thread flag settable via existing APIs, ignored
>> if there is no watchdog compiled in?
>
> There is a fundamental difference between the OOM killer and the Xenomai
> watchdog: the latter is merely a debugging tool to prevent the box to
> hang, and you can disable it completely.
>
> The situations reported by the watchdog are pathological ones, which
> involve more than 4 seconds of continuous real-time activity while the
> Linux kernel is being totally starved from CPU, and in such a case, you
> really want someone to pull the brake, regardless of the consequences on
> the application (which looks like basically toast anyway). IOW, if such
> weird situation eventually ends up being considered as "normal" under
> certain circumstances, the best approach is simply to disable the
> watchdog entirely.
>
> Limiting the runtime quantum allotted to threads through a dedicated
> scheduling policy would be a better way to deal with CPU overconsumption
> "intelligently", i.e. on a per-thread basis.
For sure, e.g. round-robin scheduling including the root thread, and
this also over aperiodic timer mode.
> OTOH, the current watchdog
> implementation is aiming at being terminally dumb for the sake of debug
> efficiency.
>
Yes, it's simple and it's a debugging mechanism. Nevertheless, I think
it can be improved without too much effort or costs. I would love to
demonstrate this, but for now I'm afraid this has to remain a (now
filed) idea.
Jan
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 250 bytes --]
next prev parent reply other threads:[~2006-08-02 11:04 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-20 21:17 [Xenomai-help] Beginner's question / testsuite / latency Julien Heyman
2006-07-20 21:58 ` Jan Kiszka
2006-07-22 9:52 ` Julien Heyman
2006-07-22 17:17 ` Jan Kiszka
2006-07-28 21:17 ` Julien Heyman
2006-07-28 21:32 ` Gilles Chanteperdrix
2006-07-30 17:29 ` Julien Heyman
2006-07-30 17:49 ` Philippe Gerum
2006-07-30 20:39 ` Gilles Chanteperdrix
2006-07-29 14:20 ` Jan Kiszka
2006-07-30 17:36 ` Julien Heyman
2006-07-30 18:03 ` Philippe Gerum
2006-07-30 19:33 ` Jan Kiszka
2006-07-30 20:03 ` Gilles Chanteperdrix
2006-07-30 22:00 ` Jan Kiszka
2006-07-30 21:23 ` Philippe Gerum
2006-07-30 22:00 ` Jan Kiszka
2006-07-31 9:57 ` Philippe Gerum
2006-07-31 11:39 ` Gilles Chanteperdrix
2006-07-31 14:19 ` Philippe Gerum
2006-07-31 20:49 ` Julien Heyman
2006-08-01 13:13 ` Gilles Chanteperdrix
2006-08-01 13:38 ` Philippe Gerum
2006-08-01 14:30 ` Philippe Gerum
2006-08-01 14:45 ` [Xenomai-core] [RFC] tame the watchdog (was: Beginner's question / testsuite / latency) Jan Kiszka
2006-08-02 8:52 ` [Xenomai-core] " Philippe Gerum
2006-08-02 11:04 ` Jan Kiszka [this message]
2006-07-21 13:25 ` [Xenomai-help] Beginner's question / testsuite / latency Gilles Chanteperdrix
2006-07-22 9:58 ` Julien Heyman
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=44D086CB.5020603@domain.hid \
--to=jan.kiszka@domain.hid \
--cc=rpm@xenomai.org \
--cc=xenomai@xenomai.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.