From: tony@bakeyournoodle.com (Tony Breeds)
To: Sripathi Kodi <sripathik@in.ibm.com>
Cc: linuxppc-dev@ozlabs.org, paulus@samba.org,
linux-kernel@vger.kernel.org, john stultz <johnstul@us.ibm.com>
Subject: [PATCH] [POWERPC] Use a sensible default for clock_getres() in the vdso.
Date: Tue, 5 Feb 2008 16:16:48 +1100 [thread overview]
Message-ID: <20080205051648.GX6887@bakeyournoodle.com> (raw)
In-Reply-To: <200801271932.59823.sripathik@in.ibm.com>
On Sun, Jan 27, 2008 at 07:32:59PM +0530, Sripathi Kodi wrote:
> Hi Paul,
>
> On PPC, I see a disparity between clock_getres implementations in the
> vdso and syscall. I am using a IBM Openpower hardware and 2.6.24 kernel
> with CONFIG_HIGH_RES_TIMERS=y.
>
> clock_getres call for CLOCK_REALTIME returns 1 millisecond. However,
> when I edit arch/powerpc/kernel/vdso*/gettimeofday.S to force it to use
> sys_clock_getres, I get 1 nanosecond resolution. The code in vdso seems
> to be returning some pre-defined (incorrect) variables.
>
> Could you please let me know the reason for this? Is it something that
> should be fixed in vdso?
Can you try the attached patch and see it if works for you?
From: Tony Breeds <tony@bakeyournoodle.com>
Subject: [PATCH] [POWERPC] Use a sensible default for clock_getres() in the vdso.
This ensures that the syscall and the (fast) vdso versions of clock_getres()
will return the same resolution.
Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
---
arch/powerpc/kernel/asm-offsets.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c
index ed083fe..e6e4928 100644
--- a/arch/powerpc/kernel/asm-offsets.c
+++ b/arch/powerpc/kernel/asm-offsets.c
@@ -22,6 +22,7 @@
#include <linux/mman.h>
#include <linux/mm.h>
#include <linux/suspend.h>
+#include <linux/hrtimer.h>
#ifdef CONFIG_PPC64
#include <linux/time.h>
#include <linux/hardirq.h>
@@ -312,7 +313,7 @@ int main(void)
DEFINE(CLOCK_REALTIME, CLOCK_REALTIME);
DEFINE(CLOCK_MONOTONIC, CLOCK_MONOTONIC);
DEFINE(NSEC_PER_SEC, NSEC_PER_SEC);
- DEFINE(CLOCK_REALTIME_RES, TICK_NSEC);
+ DEFINE(CLOCK_REALTIME_RES, (KTIME_MONOTONIC_RES).tv64);
#ifdef CONFIG_BUG
DEFINE(BUG_ENTRY_SIZE, sizeof(struct bug_entry));
--
1.5.4
Yours Tony
linux.conf.au http://linux.conf.au/ || http://lca2008.linux.org.au/
Jan 28 - Feb 02 2008 The Australian Linux Technical Conference!
WARNING: multiple messages have this Message-ID (diff)
From: tony@bakeyournoodle.com (Tony Breeds)
To: Sripathi Kodi <sripathik@in.ibm.com>
Cc: paulus@samba.org, linux-kernel@vger.kernel.org,
linuxppc-dev@ozlabs.org, john stultz <johnstul@us.ibm.com>
Subject: [PATCH] [POWERPC] Use a sensible default for clock_getres() in the vdso.
Date: Tue, 5 Feb 2008 16:16:48 +1100 [thread overview]
Message-ID: <20080205051648.GX6887@bakeyournoodle.com> (raw)
In-Reply-To: <200801271932.59823.sripathik@in.ibm.com>
On Sun, Jan 27, 2008 at 07:32:59PM +0530, Sripathi Kodi wrote:
> Hi Paul,
>
> On PPC, I see a disparity between clock_getres implementations in the
> vdso and syscall. I am using a IBM Openpower hardware and 2.6.24 kernel
> with CONFIG_HIGH_RES_TIMERS=y.
>
> clock_getres call for CLOCK_REALTIME returns 1 millisecond. However,
> when I edit arch/powerpc/kernel/vdso*/gettimeofday.S to force it to use
> sys_clock_getres, I get 1 nanosecond resolution. The code in vdso seems
> to be returning some pre-defined (incorrect) variables.
>
> Could you please let me know the reason for this? Is it something that
> should be fixed in vdso?
Can you try the attached patch and see it if works for you?
From: Tony Breeds <tony@bakeyournoodle.com>
Subject: [PATCH] [POWERPC] Use a sensible default for clock_getres() in the vdso.
This ensures that the syscall and the (fast) vdso versions of clock_getres()
will return the same resolution.
Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
---
arch/powerpc/kernel/asm-offsets.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c
index ed083fe..e6e4928 100644
--- a/arch/powerpc/kernel/asm-offsets.c
+++ b/arch/powerpc/kernel/asm-offsets.c
@@ -22,6 +22,7 @@
#include <linux/mman.h>
#include <linux/mm.h>
#include <linux/suspend.h>
+#include <linux/hrtimer.h>
#ifdef CONFIG_PPC64
#include <linux/time.h>
#include <linux/hardirq.h>
@@ -312,7 +313,7 @@ int main(void)
DEFINE(CLOCK_REALTIME, CLOCK_REALTIME);
DEFINE(CLOCK_MONOTONIC, CLOCK_MONOTONIC);
DEFINE(NSEC_PER_SEC, NSEC_PER_SEC);
- DEFINE(CLOCK_REALTIME_RES, TICK_NSEC);
+ DEFINE(CLOCK_REALTIME_RES, (KTIME_MONOTONIC_RES).tv64);
#ifdef CONFIG_BUG
DEFINE(BUG_ENTRY_SIZE, sizeof(struct bug_entry));
--
1.5.4
Yours Tony
linux.conf.au http://linux.conf.au/ || http://lca2008.linux.org.au/
Jan 28 - Feb 02 2008 The Australian Linux Technical Conference!
next prev parent reply other threads:[~2008-02-05 5:18 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-27 14:02 [ppc] Disparity between sys_clock_getres and vdso implementation Sripathi Kodi
2008-01-27 14:02 ` Sripathi Kodi
2008-02-04 6:08 ` Tony Breeds
2008-02-04 6:08 ` Tony Breeds
2008-02-05 5:16 ` Tony Breeds [this message]
2008-02-05 5:16 ` [PATCH] [POWERPC] Use a sensible default for clock_getres() in the vdso Tony Breeds
2008-02-05 9:07 ` Chirag Jog
2008-02-05 9:07 ` Chirag Jog
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=20080205051648.GX6887@bakeyournoodle.com \
--to=tony@bakeyournoodle.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=paulus@samba.org \
--cc=sripathik@in.ibm.com \
/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.