From: Maxim Levitsky <maximlevitsky@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: Thomas Gleixner <tglx@linutronix.de>
Subject: Clockevents: one-shoot mode is never enabled if local apic timer is disabled
Date: Mon, 2 Apr 2007 11:57:03 +0300 [thread overview]
Message-ID: <200704021157.03368.maximlevitsky@gmail.com> (raw)
Hi,
I finally figured out why one-shoot mode is enabled on my system only and only if local apic is enabled.
While reading through dynatic code it looks that all clockevent devices are put in periodic mode.
Then hrtimer_run_queues (which runs nevertheless CONFIG_HIGH_RES_TIMERS enabled or not) calls
indirectly (through tick_check_oneshot_change or hrtimer_switch_to_hres) to tick_switch_to_oneshot
tick_switch_to_oneshot checks that current cpu's clockevents device (and it is lapic even if not used) is not a dummy device
and it is , so it never calls tick_broadcast_switch_to_oneshot
To put it simply if broadcast is used, it works in periodic mode only. tick_broadcast_switch_to_oneshot is never called
(well it is called when broadcast is not used, but it is unnecessary, on my system for example it brings HPET on one-shoot mode,
and HPET is not used at all)
I tried to remove this check and this resulted in hard lock-up during boot with nolapic_timer
Maybe this was connected to the fact that this function is called on both cpus, and if one set a
broadcasting device(HPET) to one shoot mode, second is still not aware of this.
Is it a bug or feature ?
Best regards,
Maxim Levitsky
next reply other threads:[~2007-04-02 8:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-02 8:57 Maxim Levitsky [this message]
2007-04-02 9:34 ` Clockevents: one-shoot mode is never enabled if local apic timer is disabled Thomas Gleixner
2007-04-02 10:23 ` Maxim Levitsky
2007-04-02 10:29 ` 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=200704021157.03368.maximlevitsky@gmail.com \
--to=maximlevitsky@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--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