From: Thomas Gleixner <tglx@linutronix.de>
To: Nicolai Stange <nicstange@gmail.com>
Cc: John Stultz <john.stultz@linaro.org>, linux-kernel@vger.kernel.org
Subject: Re: [RFC v4 22/22] timekeeping: inform clockevents about freq adjustments
Date: Thu, 25 Aug 2016 17:25:53 +0200 (CEST) [thread overview]
Message-ID: <alpine.DEB.2.20.1608251714230.5714@nanos> (raw)
In-Reply-To: <20160822233320.4548-23-nicstange@gmail.com>
On Tue, 23 Aug 2016, Nicolai Stange wrote:
> + raw_spin_lock_irqsave(&clockevents_lock, flags);
> + list_for_each_entry(dev, &clockevent_devices, list) {
> + if (!(dev->features & CLOCK_EVT_FEAT_ONESHOT))
> + continue;
> +
> + mult_raw = dev->mult;
> + if (mult_raw != last_mult_raw) {
> + last_mult_raw = mult_raw;
> + last_mult_adjusted =
> + __clockevents_calc_adjust_freq(mult_raw,
> + mult_cs_mono,
> + mult_cs_raw);
What makes sure that the resulting shift/mult pair is still valid after this
adjustment? The non adjusted mult/shift pair might be right at the border of
potential overflows and the adjustment might just put it over the edge....
We need at least sanity checks here.
Thanks,
tglx
prev parent reply other threads:[~2016-08-25 15:28 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-22 23:32 [RFC v4 00/22] adapt clockevents frequencies to mono clock Nicolai Stange
2016-08-22 23:32 ` [RFC v4 01/22] clocksource: sh_cmt: compute rate before registration again Nicolai Stange
2016-08-22 23:33 ` [RFC v4 02/22] clocksource: sh_tmu: " Nicolai Stange
2016-08-22 23:33 ` [RFC v4 03/22] clocksource: em_sti: split clock prepare and enable steps Nicolai Stange
2016-08-22 23:33 ` [RFC v4 04/22] clocksource: em_sti: compute rate before registration Nicolai Stange
2016-08-22 23:33 ` [RFC v4 05/22] clocksource: h8300_timer8: don't reset rate in ->set_state_oneshot() Nicolai Stange
2016-08-22 23:33 ` [RFC v4 06/22] clockevents: make clockevents_config() static Nicolai Stange
2016-08-22 23:33 ` [RFC v4 07/22] many clockevent drivers: set ->min_delta_ticks and ->max_delta_ticks Nicolai Stange
2016-08-22 23:33 ` [RFC v4 08/22] arch/s390/kernel/time: " Nicolai Stange
2016-08-22 23:33 ` [RFC v4 09/22] arch/x86/platform/uv/uv_time: " Nicolai Stange
2016-08-22 23:33 ` [RFC v4 10/22] arch/tile/kernel/time: " Nicolai Stange
2016-09-06 19:19 ` Chris Metcalf
2016-09-08 11:21 ` Nicolai Stange
2016-09-09 16:25 ` Chris Metcalf
2016-08-22 23:33 ` [RFC v4 11/22] clockevents: always initialize ->min_delta_ns and ->max_delta_ns Nicolai Stange
2016-08-22 23:33 ` [RFC v4 12/22] many clockevent drivers: don't set " Nicolai Stange
2016-08-22 23:33 ` [RFC v4 13/22] clockevents: check a programmed delta's bounds in terms of cycles Nicolai Stange
2016-08-27 15:20 ` Nicolai Stange
2016-08-31 8:31 ` Nicolai Stange
2016-08-22 23:33 ` [RFC v4 14/22] clockevents: clockevents_program_event(): turn clc into unsigned long Nicolai Stange
2016-08-25 13:20 ` Thomas Gleixner
2016-08-27 15:23 ` Nicolai Stange
2016-08-22 23:33 ` [RFC v4 15/22] clockevents: clockevents_program_min_delta(): don't set ->next_event Nicolai Stange
2016-08-22 23:33 ` [RFC v4 16/22] clockevents: use ->min_delta_ticks_adjusted to program minimum delta Nicolai Stange
2016-08-24 9:28 ` Nicolai Stange
2016-08-22 23:33 ` [RFC v4 17/22] clockevents: min delta increment: calculate min_delta_ns from ticks Nicolai Stange
2016-08-22 23:33 ` [RFC v4 18/22] timer_list: print_tickdevice(): calculate ->*_delta_ns dynamically Nicolai Stange
2016-08-22 23:33 ` [RFC v4 19/22] clockevents: purge ->min_delta_ns and ->max_delta_ns Nicolai Stange
2016-08-22 23:33 ` [RFC v4 20/22] clockevents: initial support for mono to raw time conversion Nicolai Stange
2016-08-22 23:33 ` [RFC v4 21/22] clockevents: make setting of ->mult and ->mult_adjusted atomic Nicolai Stange
2016-08-22 23:33 ` [RFC v4 22/22] timekeeping: inform clockevents about freq adjustments Nicolai Stange
2016-08-24 9:40 ` Nicolai Stange
2016-08-25 14:56 ` Thomas Gleixner
2016-08-25 15:25 ` Thomas Gleixner [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=alpine.DEB.2.20.1608251714230.5714@nanos \
--to=tglx@linutronix.de \
--cc=john.stultz@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nicstange@gmail.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
all inboxes | Powered by JetHome®