All of lore.kernel.org
 help / color / mirror / Atom feed
From: Olliver Schinagl <o.schinagl@ultimaker.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org, Olliver Schinagl <oliver@schinagl.nl>
Subject: Re: [PATCH] hrtimer: add hrtimer_start_now()
Date: Thu, 22 Jan 2015 12:07:03 +0100	[thread overview]
Message-ID: <54C0D9D7.4010903@ultimaker.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1501221153320.5526@nanos>

Hey Thomas,

On 22-01-15 12:01, Thomas Gleixner wrote:
> On Thu, 22 Jan 2015, Olliver Schinagl wrote:
>
>> From: Olliver Schinagl <oliver@schinagl.nl>
>>
>> When using a hrtimer for repeating periodic ticks, hrtimer_forward_now()
>> is often used. Quite possibly the timer loop is thus probably fully
>> controlled by hrtimer_forward_now() and we don't really care when the
>> timer is started. With hrtimer_start() we need to define exactly when a
>> event has to start. By introducing hrtimer_start_now() we do the same as
>> what hrtimer_forward_now() does, start as soon as possible and get into
>> the timer loop.
>   
>> Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
>> ---
>>   include/linux/hrtimer.h | 6 ++++++
>>   1 file changed, 6 insertions(+)
>>
>> diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
>> index a036d05..080a5f5 100644
>> --- a/include/linux/hrtimer.h
>> +++ b/include/linux/hrtimer.h
>> @@ -353,6 +353,12 @@ static inline void destroy_hrtimer_on_stack(struct hrtimer *timer) { }
>>   /* Basic timer operations: */
>>   extern int hrtimer_start(struct hrtimer *timer, ktime_t tim,
>>   			 const enum hrtimer_mode mode);
>> +
>> +static inline int hrtimer_start_now(struct hrtimer *timer,
>> +				    const enum hrtimer_mode mode)
>> +{
>> +	return hrtimer_start(timer, timer->base->get_time(), mode);
>> +}
> What's the mode argument for? How is this supposed to do what you
> want:
>
>         hrtimer_start_now(timer, HRTIMER_MODE_REL);
Ah, of course, I guess we'd have to use a fixed default, my bad.
>
> Aside of that, what's wrong with doing:
>
>        static const ktime_t ktime_zero = { .tv64 = 0 };
>
>        hrtimer_start(timer, ktime_zero, HRTIMER_MODE_REL);
I guess the same could be said for hrtimer_forward_now I suppose. It was 
just intended as a little helper, with emphasis on helper.
Olliver
>
> Thanks,
>
> 	tglx

-- 
Met vriendelijke groeten, Kind regards, 与亲切的问候

Olliver Schinagl
Research & Development
Ultimaker B.V.
http://www.ultimaker.com


  reply	other threads:[~2015-01-22 11:07 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-22  6:12 [PATCH] hrtimer: add hrtimer_start_now() Olliver Schinagl
2015-01-22 11:01 ` Thomas Gleixner
2015-01-22 11:07   ` Olliver Schinagl [this message]
2015-01-22 19:35     ` 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=54C0D9D7.4010903@ultimaker.com \
    --to=o.schinagl@ultimaker.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oliver@schinagl.nl \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.