Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1724173

[PATCH 11/25] hrtimer: Allow remote hrtimer enqueue with "expires_next" as expiry time

Path csiph.com!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod
From Anna-Maria Gleixner <anna-maria@linutronix.de>
Newsgroups linux.kernel
Subject [PATCH 11/25] hrtimer: Allow remote hrtimer enqueue with "expires_next" as expiry time
Date Thu, 31 Aug 2017 14:30:02 +0200
Message-ID <ukwLE-5Ay-27@gated-at.bofh.it> (permalink)
References <ukwLD-5Ay-3@gated-at.bofh.it>
User-Agent quilt/0.63-1
MIME-Version 1.0
Content-Type text/plain; charset=UTF-8
Content-Disposition inline; filename=hrtimer--check-target-fix.patch
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 25
Organization linux.* mail to news gateway
X-Original-Cc Peter Zijlstra <peterz@infradead.org>, Ingo Molnar <mingo@redhat.com>, Christoph Hellwig <hch@lst.org>, keescook@chromium.org, John Stultz <john.stultz@linaro.org>, Thomas Gleixner <tglx@linutronix.de>
X-Original-Date Thu, 31 Aug 2017 12:23:38 -0000
X-Original-Message-ID <20170831105826.438898127@linutronix.de>
X-Original-References <20170831105725.809317030@linutronix.de>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1724173

Show key headers only | View raw


When enqueuing a timer with expiry X into a timer queue, where already
a timer with expriy X is queued, the new timer is queued on the
right-hand side of the already queued timer.

Therefore it is no problem, to enqueue a hrtimer on a remote CPU with the
same expiry time than the programmed expiry time (expires_next) on this
CPU, because the reprogramming path is not executed - it is not the
"leftmost" hrtimer.

Signed-off-by: Anna-Maria Gleixner <anna-maria@linutronix.de>
---
 kernel/time/hrtimer.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/kernel/time/hrtimer.c
+++ b/kernel/time/hrtimer.c
@@ -168,7 +168,7 @@ hrtimer_check_target(struct hrtimer *tim
 	ktime_t expires;
 
 	expires = ktime_sub(hrtimer_get_expires(timer), new_base->offset);
-	return expires <= new_base->cpu_base->expires_next;
+	return expires < new_base->cpu_base->expires_next;
 }
 
 #ifdef CONFIG_NO_HZ_COMMON

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

[PATCH 11/25] hrtimer: Allow remote hrtimer enqueue with  "expires_next" as expiry time Anna-Maria Gleixner <anna-maria@linutronix.de> - 2017-08-31 14:30 +0200

csiph-web