From: David Mosberger-Tang <David.Mosberger@acm.org>
To: linux-ia64@vger.kernel.org
Subject: Re: [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze
Date: Mon, 19 Sep 2005 22:12:23 +0000 [thread overview]
Message-ID: <ed5aea430509191512778388bb@mail.gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.62.0509091501240.12956@schroedinger.engr.sgi.com>
On 9/19/05, Luck, Tony <tony.luck@intel.com> wrote:
> I don't think that I've followed all the steps and proposed
> solutions in this thread. There are (at least) two issues to
> try to solve when the system has been frozen for an extended
> period of time (more than a few ticks):
>
> 1) The system clock (gettimeofday(2)) needs to catch up the
> missed time. We can either do this in one mighty bound, or
> we can creep up on it. Either is plausible (though each may
> have its own issues for applications, neither should be
> catastrophic as applications should already deal with jumping
> and slewing time due to NTP and other agents setting the
> system clock).
>
> 2) There are some pending timeouts from the interval of real
> time that we skipped. Dealing with these may be harder, as
> some of them may be related to physical limitations of devices,
> so almost any choice we make about these (call all the pending
> timeouts immediately, call them at some accelerated rate, skip
> them) may cause problems for some device driver. I think to
> make any progress on a solution here we need to restrict the
> discussion to real device drivers that are currently in the
> tree. Otherwise we will rathole forever discussing theoretical
> situations.
>
> Any other issues?
Sounds about right to me. The point I was making is that issue (2) is
largely due to the "priority-inversion" that you're getting when
letting time catch up in one big jump: even driver actions that
completed successfully will appear to have failed because the timeout
handler is run long before the completion action that would have
disarmed the timer. Now, there are other failures that you cannot
hide that way (e.g., an input buffer might overrun on a device), but
there is really nothing you can do about that when you halt the system
for such long periods (and I don't think it's a point of contention
anyhow).
--david
--
Mosberger Consulting LLC, voice/fax: 510-744-9372,
http://www.mosberger-consulting.com/
35706 Runckel Lane, Fremont, CA 94536
prev parent reply other threads:[~2005-09-19 22:12 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-09-09 22:02 [RFC] timer_interrupt: Avoid device timeouts by freezing time if Christoph Lameter
2005-09-09 22:10 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze Magenheimer, Dan (HP Labs Fort Collins)
2005-09-09 22:33 ` David Mosberger-Tang
2005-09-09 22:36 ` Luck, Tony
2005-09-09 23:13 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time Christoph Lameter
2005-09-09 23:18 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze David Mosberger-Tang
2005-09-09 23:19 ` Magenheimer, Dan (HP Labs Fort Collins)
2005-09-11 17:04 ` Magenheimer, Dan (HP Labs Fort Collins)
2005-09-12 16:27 ` Tian, Kevin
2005-09-12 16:42 ` Tian, Kevin
2005-09-19 18:04 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time Christoph Lameter
2005-09-19 18:10 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze David Mosberger-Tang
2005-09-19 18:23 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time Christoph Lameter
2005-09-19 19:06 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze Luck, Tony
2005-09-19 19:21 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time Christoph Lameter
2005-09-19 20:16 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze David Mosberger-Tang
2005-09-19 21:26 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time Christoph Lameter
2005-09-19 21:32 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze David Mosberger-Tang
2005-09-19 21:38 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time Christoph Lameter
2005-09-19 22:03 ` [RFC] timer_interrupt: Avoid device timeouts by freezing time if system froze Luck, Tony
2005-09-19 22:12 ` David Mosberger-Tang [this message]
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=ed5aea430509191512778388bb@mail.gmail.com \
--to=david.mosberger@acm.org \
--cc=linux-ia64@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox