On 02/20/2014 12:40 AM, Alexey Perevalov wrote:
> From: Thomas Gleixner <t...@linutronix.de>
>
> This patch introduces new public CLOCKID constants for
> user space API, such as timerfd. It extends hrtimer API and makes
> possible to have unified interfaces where deferreble functionality is
> used. In-kernel users such as device drivers could find benefits too.
>
> High resolution timer now could work with CLOCK_REALTIME_DEFERRABLE,
> CLOCK_MONOTONIC_DEFERRABLE, CLOCK_BOOTTIME_DEFERRABLE.
>
> Signed-off-by: Thomas Gleixner <t...@linutronix.de>
> Signed-off-by: Alexey Perevalov <a.pereva...@samsung.com>
> ---
>  include/linux/hrtimer.h   |    3 +++
>  include/uapi/linux/time.h |    3 +++
>  kernel/hrtimer.c          |   62 
> +++++++++++++++++++++++++++++++++++----------
>  3 files changed, 55 insertions(+), 13 deletions(-)
>
> diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h
> index d19a5c2..fe1159c 100644
> --- a/include/linux/hrtimer.h
> +++ b/include/linux/hrtimer.h
> @@ -158,6 +158,9 @@ enum  hrtimer_base_type {
>       HRTIMER_BASE_REALTIME,
>       HRTIMER_BASE_BOOTTIME,
>       HRTIMER_BASE_TAI,
> +     HRTIMER_BASE_MONOTONIC_DEFERRABLE,
> +     HRTIMER_BASE_REALTIME_DEFERRABLE,
> +     HRTIMER_BASE_BOOTTIME_DEFERRABLE,
>       HRTIMER_MAX_CLOCK_BASES,
>  };
>  
> diff --git a/include/uapi/linux/time.h b/include/uapi/linux/time.h
> index e75e1b6..bb8dc60 100644
> --- a/include/uapi/linux/time.h
> +++ b/include/uapi/linux/time.h
> @@ -56,6 +56,9 @@ struct itimerval {
>  #define CLOCK_BOOTTIME_ALARM         9
>  #define CLOCK_SGI_CYCLE                      10      /* Hardware specific */
>  #define CLOCK_TAI                    11
> +#define CLOCK_REALTIME_DEFERRABLE    12
> +#define CLOCK_MONOTONIC_DEFERRABLE   13
> +#define CLOCK_BOOTTIME_DEFERRABLE    14

Adding the deferrable HRTIMER bases above is right, but I don't think we
agreed on adding the _DEFERRABLE clockids.

I'd instead prefer you use add a new TIMER_DEFERABLE flags argument, and
use the combination of the clockid + flag to decide which HRTIMER base
is used.

thanks
-john

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

Reply via email to