[RFC PATCH 16/30 v3] time keeping add cycle_raw for actual incrementation

Steven Rostedt
2008-01-15T20:53:31Z

[-- Attachment #1: timekeeping-add-cycle-raw-for-actual-incrementation.patch --]
[-- Type: text/plain, Size: 1295 bytes --]

The get_monotonic_cycles needs to produce a monotonic counter as output.

This patch adds a cycle_raw to produce an accumulative counter.
Unfortunately there is already an cycle_accumulate variable, but that is
used to avoid clock source overflow and can also be decremented
(probably that name should be changed and we should use that for this
patch).

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: John Stultz <johnstul@us.ibm.com>

---
include/linux/clocksource.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

Index: linux-compile.git/include/linux/clocksource.h
===================================================================
--- linux-compile.git.orig/include/linux/clocksource.h 2008-01-14 13:14:13.000000000 -0500
+++ linux-compile.git/include/linux/clocksource.h 2008-01-14 14:57:47.000000000 -0500
@@ -87,7 +87,7 @@ struct clocksource {
* more than one cache line.
*/
struct {
- cycle_t cycle_last, cycle_accumulated;
+ cycle_t cycle_last, cycle_accumulated, cycle_raw;
} ____cacheline_aligned_in_smp;

u64 xtime_nsec;
@@ -204,6 +204,7 @@ static inline void clocksource_accumulat
cycle_t offset = (now - cs->cycle_last) & cs->mask;
cs->cycle_last = now;
cs->cycle_accumulated += offset;
+ cs->cycle_raw += offset;
}

/**

--