This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: Watchdog
- From: Gary Parnes <GaryP at logicpd dot com>
- To: 'Andrew Lunn' <andrew at lunn dot ch>, Daniel Gomes <danielcgomes at yahoo dot com dot br>
- Cc: ecos-discuss at ecos dot sourceware dot org
- Date: Fri, 17 Dec 2004 10:51:05 -0600
- Subject: RE: [ECOS] Watchdog
A slight twist on the meta-watchdog scheme is to have a high-priority
"system monitor" thread that runs at periodic intervals. The thread's
responsibility is to monitor the health of all other threads. First order
of business for the thread: it kicks the watchdog timer. Then, it checks the
system state. If it sees something out of the ordinary, it can try to
correct the system at a software level. If it determines that the situation
is beyond hope (or merely beyond it's heuristics), it can force an immediate
reset (or let the watchdog expire... either-or).
If either the system timer or the system monitor thread goes out to lunch,
then the watchdog will expire, which is what you would want for this level
of failure.
--Gary Parnes
SENIOR SOFTWARE ENGINEER
Logic Product Development
411 Washington Ave. North, Suite 101
Minneapolis, MN 55401
> -----Original Message-----
> From: Andrew Lunn [mailto:andrew@lunn.ch]
> Sent: Friday, December 17, 2004 10:34 AM
> To: Daniel Gomes
> Cc: ecos-discuss@ecos.sourceware.org
> Subject: Re: [ECOS] Watchdog
>
>
> I've also done a meta-watchdog system. I have a high priority thread
> which does the actually kicking. But that thread itself just receives
> kicks from other threads. If any of the other threads stop kicking,
> the "Watchdog" thread stops kicking the hardware.
>
> Doing it like this i can put kicks into all threads which are
> important so if any one deadlock's we get to know about it. I also put
> one kicker at the lowest priority so that if we reach some sort of
> livelock spinning condition which is eating all the CPU for a while we
> get a reset.
>
> Andrew
>
> --
> Before posting, please read the FAQ:
> http://ecos.sourceware.org/fom/ecos
> and search the list archive:
> http://ecos.sourceware.org/ml/ecos-discuss
>
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss