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


Groups > linux.kernel > #1160185

Re: [PATCH 08/14] hrtimer: Allow hrtimer::function() to free the timer

Path csiph.com!aioe.org!news.servidellagleba.it!bofh.it!news.nic.it!robomod
From Oleg Nesterov <oleg@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH 08/14] hrtimer: Allow hrtimer::function() to free the timer
Date Mon, 08 Jun 2015 01:00:02 +0200
Message-ID <pyRHQ-4W2-5@gated-at.bofh.it> (permalink)
References <pxVDR-3w0-15@gated-at.bofh.it> <pxVDR-3w0-19@gated-at.bofh.it> <pyRot-4yL-3@gated-at.bofh.it>
X-Original-To Peter Zijlstra <peterz@infradead.org>
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
User-Agent Mutt/1.5.18 (2008-05-17)
X-Scanned-By MIMEDefang 2.68 on 10.5.11.23
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 41
Organization linux.* mail to news gateway
X-Original-Cc umgwanakikbuti@gmail.com, mingo@elte.hu, ktkhai@parallels.com, rostedt@goodmis.org, tglx@linutronix.de, juri.lelli@gmail.com, pang.xunlei@linaro.org, wanpeng.li@linux.intel.com, linux-kernel@vger.kernel.org
X-Original-Date Mon, 8 Jun 2015 00:56:38 +0200
X-Original-Message-ID <20150607225638.GA9329@redhat.com>
X-Original-References <20150605084836.364306429@infradead.org> <20150605085205.723058588@infradead.org> <20150607223317.GA5193@redhat.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref aioe.org linux.kernel:1160185

Show key headers only | View raw


On 06/08, Oleg Nesterov wrote:
>
> And I simply can not understand the complication in hrtimer_active(),
> please help!

Sorry for another off-topic email, but I don't even understand the
usage of hrtimer_active().

Say, do_nanosleep()

		hrtimer_start_expires(&t->timer, mode);
		if (!hrtimer_active(&t->timer))
			t->task = NULL;

why? Assuming that hrtimer_active() is correct, it can only return
false if t->task was already cleared by hrtimer_wakeup().


OTOH. perf_cpu_hrtimer_restart() does

	if (hrtimer_active(hr))
		return;

	if (!hrtimer_callback_running(hr))
		__hrtimer_start_range_ns(...);

why it can't simply do

	if (!hrtimer_active(hr)) // implies !hrtimer_callback_running()
		__hrtimer_start_range_ns(...);


Confused.

Oleg.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

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


Thread

Re: [PATCH 08/14] hrtimer: Allow hrtimer::function() to free the  timer Oleg Nesterov <oleg@redhat.com> - 2015-06-08 00:40 +0200
  Re: [PATCH 08/14] hrtimer: Allow hrtimer::function() to free the  timer Oleg Nesterov <oleg@redhat.com> - 2015-06-08 01:00 +0200
  Re: [PATCH 08/14] hrtimer: Allow hrtimer::function() to free the  timer Peter Zijlstra <peterz@infradead.org> - 2015-06-08 13:00 +0200
  Re: [PATCH 0/3] hrtimer: HRTIMER_STATE_ fixes Peter Zijlstra <peterz@infradead.org> - 2015-06-08 21:10 +0200
  Re: [PATCH 08/14] hrtimer: Allow hrtimer::function() to free the  timer Peter Zijlstra <peterz@infradead.org> - 2015-06-11 00:40 +0200

csiph-web