lkml.org 
[lkml]   [2010]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subjectre-adding clocksource_get_next ?
Hello!
this function was removed in the past but I've not clear all the details.
While testing LLTng, I wrote the patch, in attachment, that re-adds it
again.
The clocksource_get_next returns the first clock source available
(without looking at the rating).
In my environment, a clock source is a TMU channel (e.g. TMU1) and,
indeed, clocksource_get_next works fine.

Let me know if it makes sense or if I'm missing something.

Best Regards,
Giuseppe
From d05e9a31e4d697b704a1d9170aeee7235ffffb0f Mon Sep 17 00:00:00 2001
From: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Date: Tue, 6 Apr 2010 16:04:46 +0200
Subject: [PATCH] add clocksource_get_next

Added the clocksource_get_next function, it returns a source clock.
The clocksource_get_next function has been used for testing LTT
and implementing trace clock definitions on ST platforms.

Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
---
kernel/time/clocksource.c | 17 +++++++++++++++++
1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/kernel/time/clocksource.c b/kernel/time/clocksource.c
index 0e98497..c9e8f56 100644
--- a/kernel/time/clocksource.c
+++ b/kernel/time/clocksource.c
@@ -613,6 +613,23 @@ static void clocksource_enqueue(struct clocksource *cs)
list_add(&cs->list, entry);
}

+/*
+ * Return a clocksource if available
+ */
+struct clocksource *clocksource_get_next(void)
+{
+ struct clocksource *clock = NULL;
+
+ mutex_lock(&clocksource_mutex);
+ if (!list_empty(&clocksource_list)) {
+ struct list_head *list = clocksource_list.next;
+ clock = container_of(list, struct clocksource, list);
+ }
+ mutex_unlock(&clocksource_mutex);
+
+ return clock;
+}
+
/**
* clocksource_register - Used to install new clocksources
* @t: clocksource to be registered
--
1.6.0.4
\
 
 \ /
  Last update: 2010-04-09 08:55    [W:0.071 / U:0.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site