mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: tip-bot for Thomas Gleixner <tglx@linutronix.de>
To: linux-tip-commits@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, hpa@zytor.com, mingo@redhat.com,
	johnstul@us.ibm.com, tglx@linutronix.de,
	richard.cochran@omicron.at
Subject: [tip:timers/core] posix-timers: Convert clock_gettime() to clockid_to_kclock()
Date: Wed, 2 Feb 2011 21:59:33 GMT	[thread overview]
Message-ID: <tip-42285777631aa0654fbb6442057b3e176445c6c5@git.kernel.org> (raw)
In-Reply-To: <20110201134418.611097203@linutronix.de>

Commit-ID:  42285777631aa0654fbb6442057b3e176445c6c5
Gitweb:     http://git.kernel.org/tip/42285777631aa0654fbb6442057b3e176445c6c5
Author:     Thomas Gleixner <tglx@linutronix.de>
AuthorDate: Tue, 1 Feb 2011 13:51:50 +0000
Committer:  Thomas Gleixner <tglx@linutronix.de>
CommitDate: Wed, 2 Feb 2011 15:28:14 +0100

posix-timers: Convert clock_gettime() to clockid_to_kclock()

Use the new kclock decoding mechanism and rename the misnomed
common_clock_get() to posix_clock_realtime_get().

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: John Stultz <johnstul@us.ibm.com>
Tested-by: Richard Cochran <richard.cochran@omicron.at>
LKML-Reference: <20110201134418.611097203@linutronix.de>
---
 kernel/posix-timers.c |   28 +++++++++++++++-------------
 1 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c
index 49f358c..d9e5edf 100644
--- a/kernel/posix-timers.c
+++ b/kernel/posix-timers.c
@@ -190,15 +190,6 @@ static inline int common_clock_getres(const clockid_t which_clock,
 	return 0;
 }
 
-/*
- * Get real time for posix timers
- */
-static int common_clock_get(clockid_t which_clock, struct timespec *tp)
-{
-	ktime_get_real_ts(tp);
-	return 0;
-}
-
 static int common_timer_create(struct k_itimer *new_timer)
 {
 	hrtimer_init(&new_timer->it.real.timer, new_timer->it_clock, 0);
@@ -226,6 +217,13 @@ static inline int invalid_clockid(const clockid_t which_clock)
 	return 1;
 }
 
+/* Get clock_realtime */
+static int posix_clock_realtime_get(clockid_t which_clock, struct timespec *tp)
+{
+	ktime_get_real_ts(tp);
+	return 0;
+}
+
 /* Set clock_realtime */
 static int posix_clock_realtime_set(const clockid_t which_clock,
 				    const struct timespec *tp)
@@ -277,6 +275,7 @@ static __init int init_posix_timers(void)
 {
 	struct k_clock clock_realtime = {
 		.clock_getres	= hrtimer_get_res,
+		.clock_get	= posix_clock_realtime_get,
 		.clock_set	= posix_clock_realtime_set,
 		.nsleep		= common_nsleep,
 		.nsleep_restart	= hrtimer_nanosleep_restart,
@@ -956,18 +955,21 @@ SYSCALL_DEFINE2(clock_settime, const clockid_t, which_clock,
 SYSCALL_DEFINE2(clock_gettime, const clockid_t, which_clock,
 		struct timespec __user *,tp)
 {
+	struct k_clock *kc = clockid_to_kclock(which_clock);
 	struct timespec kernel_tp;
 	int error;
 
-	if (invalid_clockid(which_clock))
+	if (!kc)
 		return -EINVAL;
-	error = CLOCK_DISPATCH(which_clock, clock_get,
-			       (which_clock, &kernel_tp));
+	if (!kc->clock_get)
+		return -EOPNOTSUPP;
+
+	error = kc->clock_get(which_clock, &kernel_tp);
+
 	if (!error && copy_to_user(tp, &kernel_tp, sizeof (kernel_tp)))
 		error = -EFAULT;
 
 	return error;
-
 }
 
 SYSCALL_DEFINE2(clock_getres, const clockid_t, which_clock,

  parent reply	other threads:[~2011-02-02 21:59 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-01 13:50 [patch 00/28] Rework of the PTP support series core code Thomas Gleixner
2011-02-01 13:50 ` [patch 01/28] time: Correct the *settime* parameters Thomas Gleixner
2011-02-01 14:22   ` Thomas Gleixner
2011-02-01 20:32   ` john stultz
2011-02-02 21:54   ` [tip:timers/core] " tip-bot for Richard Cochran
2011-02-01 13:51 ` [patch 02/28] posix-timers: Define nanosleep not supported error separate Thomas Gleixner
2011-02-01 20:32   ` John Stultz
2011-02-02 21:55   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 03/28] posix-timers: Cleanup struct initializers Thomas Gleixner
2011-02-01 20:33   ` john stultz
2011-02-02 21:55   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 04/28] posix-timers: Introduce clock_posix_cpu Thomas Gleixner
2011-02-01 20:34   ` john stultz
2011-02-02 21:56   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 05/28] posix-timers: Introduce clockid_to_kclock() Thomas Gleixner
2011-02-01 20:37   ` john stultz
2011-02-02 21:56   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 06/28] posix-timers: Convert clock_nanosleep to clockid_to_kclock() Thomas Gleixner
2011-02-01 20:41   ` john stultz
2011-02-02 21:57   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 07/28] posix-timers: Convert clock_nanosleep_restart " Thomas Gleixner
2011-02-01 20:42   ` John Stultz
2011-02-01 20:46     ` Thomas Gleixner
2011-02-01 21:08       ` Thomas Gleixner
2011-02-02 21:57   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 08/28] posix-timers: Cleanup restart_block usage Thomas Gleixner
2011-02-01 21:11   ` john stultz
2011-02-01 21:14     ` Thomas Gleixner
2011-02-02 21:57   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 09/28] thread_info: Remove legacy arg0-3 from restart_block Thomas Gleixner
2011-02-01 21:11   ` john stultz
2011-02-02 21:58   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 10/28] posix-cpu-timers: Remove the stub nanosleep functions Thomas Gleixner
2011-02-01 21:14   ` John Stultz
2011-02-02 21:58   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 11/28] posix-timers: Convert clock_settime to clockid_to_kclock() Thomas Gleixner
2011-02-01 21:15   ` john stultz
2011-02-02 21:59   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 12/28] posix-timers: Convert clock_gettime() " Thomas Gleixner
2011-02-01 21:16   ` john stultz
2011-02-02  9:09   ` Richard Cochran
2011-02-02  9:55     ` Thomas Gleixner
2011-02-02 21:59   ` tip-bot for Thomas Gleixner [this message]
2011-02-01 13:51 ` [patch 13/28] posix-timers: Convert clock_getres() " Thomas Gleixner
2011-02-01 21:17   ` john stultz
2011-02-02 22:00   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 14/28] posix-timers: Remove useless res field from k_clock Thomas Gleixner
2011-02-01 21:18   ` john stultz
2011-02-02 22:00   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:51 ` [patch 15/28] posix-timers: Convert timer_create() to clockid_to_kclock() Thomas Gleixner
2011-02-01 21:20   ` john stultz
2011-02-02 22:00   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 16/28] posix-timers: Convert timer_settime() " Thomas Gleixner
2011-02-01 21:22   ` John Stultz
2011-02-02 22:01   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 17/28] posix-timers: Convert timer_gettime() " Thomas Gleixner
2011-02-01 21:23   ` john stultz
2011-02-02 22:01   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 18/28] posix-timers: Convert timer_delete() " Thomas Gleixner
2011-02-01 21:24   ` john stultz
2011-02-02  8:29   ` Richard Cochran
2011-02-02  9:53     ` Thomas Gleixner
2011-02-02 22:02   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 19/28] posix-timers: Remove CLOCK_DISPATCH leftovers Thomas Gleixner
2011-02-01 21:25   ` john stultz
2011-02-02 22:02   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 20/28] posix-timers: Make posix-cpu-timers functions static Thomas Gleixner
2011-02-01 21:28   ` John Stultz
2011-02-01 21:33     ` Thomas Gleixner
2011-02-02 22:03   ` [tip:timers/core] " tip-bot for Thomas Gleixner
2011-02-01 13:52 ` [patch 21/28] posix-timer: Update comment Thomas Gleixner
2011-02-01 21:28   ` john stultz
2011-02-02 22:03   ` [tip:timers/core] " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 22/28] time: Introduce timekeeping_inject_offset Thomas Gleixner
2011-02-02 22:03   ` [tip:timers/core] " tip-bot for John Stultz
2011-02-01 13:52 ` [patch 23/28] ntp: Add ADJ_SETOFFSET mode bit Thomas Gleixner
2011-02-01 21:30   ` john stultz
2011-02-01 13:52 ` [patch 24/28] posix-clocks: Splitout compat timex accessors Thomas Gleixner
2011-02-01 21:31   ` john stultz
2011-02-02 22:04   ` [tip:timers/core] time: " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 25/28] posix clocks: Introduce a syscall for clock tuning Thomas Gleixner
2011-02-01 21:35   ` john stultz
2011-02-02 22:04   ` [tip:timers/core] posix-timers: " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 26/28] posix_clocks: Add clock_adjtime for x86 Thomas Gleixner
2011-02-01 21:36   ` john stultz
2011-02-02 22:05   ` [tip:timers/core] x86: " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 27/28] posix-timers: Add support for fd based clocks Thomas Gleixner
2011-02-01 21:38   ` john stultz
2011-02-02  9:19   ` Richard Cochran
2011-02-02 10:33     ` Thomas Gleixner
2011-02-02 22:05   ` [tip:timers/core] " tip-bot for Richard Cochran
2011-02-01 13:52 ` [patch 28/28] posix clocks: Introduce dynamic clocks Thomas Gleixner
2011-02-01 21:49   ` john stultz
2011-02-01 22:04     ` Thomas Gleixner
2011-02-02  7:50     ` Richard Cochran
2011-02-02 10:37       ` Thomas Gleixner
2011-02-02 11:25         ` Thomas Gleixner
2011-02-02 22:06           ` [tip:timers/core] posix-timers: Cleanup namespace tip-bot for Thomas Gleixner
2011-02-02 22:06   ` [tip:timers/core] posix clocks: Introduce dynamic clocks tip-bot for Richard Cochran
2011-03-03 14:50   ` [patch 28/28] " torbenh
2011-03-03 16:01     ` Richard Cochran
2011-03-03 17:07       ` torbenh
2011-03-04  6:05         ` Richard Cochran
2011-02-02  8:17 ` [patch 00/28] Rework of the PTP support series core code Richard Cochran
2011-02-02 13:53 ` Richard Cochran
2011-02-02 22:04 ` [tip:timers/core] ntp: Add ADJ_SETOFFSET mode bit tip-bot for Richard Cochran
2011-02-18  9:07   ` Richard Cochran
2011-02-18 16:07     ` [tip:timers/core] ntp: Remove redundant and incorrect parameter check tip-bot for Richard Cochran
2011-03-01 15:38 ` [patch 00/28] Rework of the PTP support series core code torbenh
2011-03-01 18:50   ` Richard Cochran
2011-03-02  9:41     ` torbenh

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=tip-42285777631aa0654fbb6442057b3e176445c6c5@git.kernel.org \
    --to=tglx@linutronix.de \
    --cc=hpa@zytor.com \
    --cc=johnstul@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=richard.cochran@omicron.at \
    /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

Powered by JetHome