mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: Andreas Mohr <andi@lisas.de>
Cc: Venki Pallipadi <venkatesh.pallipadi@intel.com>,
	linux-kernel@vger.kernel.org, shaohua.li@intel.com
Subject: Re: [PATCH] Prevent clockevent event_handler ending up handler_noop
Date: Wed, 3 Sep 2008 19:15:16 +0200 (CEST)	[thread overview]
Message-ID: <alpine.LFD.1.10.0809031908270.3243@apollo.tec.linutronix.de> (raw)
In-Reply-To: <20080903164356.GA31969@rhlx01.hs-esslingen.de>

On Wed, 3 Sep 2008, Andreas Mohr wrote:
> Hi,
> 
> > This does not have any issue in normal case as most likely all the clockevent
> > devices are setup before the highres switch. But, can potentially be affecting
> > some corner case where HPET force detect happens after the highres switch.
> 
> So... does that apply to a nice sound card with an even nicer
> 1 MHz "DirectX timer" as well
> which I would soon force into registering a clock_event_device? ;)
> (I might add that this sound driver is _modular_, BTW it's azt3328.c)

Yup, the switchover to any new device can cause this. Right now we
only have HPET replacing PIT, but ..
 
> Or did I completely slide off the usual tracks of what is "politically
> correct" to do with kernel source code here? ;)

-ENOPARSE

> Oh, and how would this integrate (or rather, "conflict"?)
> with globally managed PIT / HPET event device handling?

Pretty much not. We have this global management as HPET replaces the
PIT and occupies the PIT irq as well, so we need to know which one is
active.

> See what such highres-deprived people as myself (PIT, acpi_pm,
> _no_ HPET and thus no IRQed highres timer) are doing now,

Err. PIT + acpi_pm works with highres. acpi_pm is a stable clocksource
and PIT is not a good, but a usable oneshot timer.
 
> And any hints on how to possibly (reliably!) provide both clock_event_device
> (oneshot) _and_ clocksource for a _single_ IRQed countdown timer?

No. For a reliable clocksource you need an ever increasing /
decreasing counter, which just wraps around when the max. count is
reached.

If you use a single shot timer, which is reprogrammed after every
interrupt, then you will deviate from the time line as you have no
idea how long it took from the counter reaching zero to the point
where you reload the timer. Simply wont work.

Thanks,

	tglx

  reply	other threads:[~2008-09-03 17:15 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-02 23:20 Venki Pallipadi
2008-09-02 23:31 ` Thomas Gleixner
2008-09-03 16:43 ` Andreas Mohr
2008-09-03 17:15   ` Thomas Gleixner [this message]
2008-09-03 17:36     ` Andreas Mohr
2008-09-03 19:01       ` Thomas Gleixner
2008-09-04  8:15         ` Andreas Mohr
2008-09-04  8:27           ` Thomas Gleixner

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=alpine.LFD.1.10.0809031908270.3243@apollo.tec.linutronix.de \
    --to=tglx@linutronix.de \
    --cc=andi@lisas.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=shaohua.li@intel.com \
    --cc=venkatesh.pallipadi@intel.com \
    /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

Powered by JetHome