From: dwalker@mvista.com
To: akpm@osdl.org
Cc: linux-kernel@vger.kernel.org, johnstul@us.ibm.com
Subject: [PATCH 09/10] -mm clocksource: initialize list value
Date: Thu, 03 Aug 2006 20:24:23 -0700 [thread overview]
Message-ID: <20060804032523.221553000@mvista.com> (raw)
In-Reply-To: 20060804032414.304636000@mvista.com
[-- Attachment #1: clocksouce_list_init.patch --]
[-- Type: text/plain, Size: 3808 bytes --]
This is an optional change to the clocksource structures. If the list
field is initialized it allows clocksource_register to complete faster
since it doesn't have the scan the list of clocks doing strcmp on each.
Signed-Off-By: Daniel Walker <dwalker@mvista.com>
---
arch/i386/kernel/hpet.c | 1 +
arch/i386/kernel/i8253.c | 1 +
arch/i386/kernel/tsc.c | 1 +
drivers/clocksource/acpi_pm.c | 1 +
drivers/clocksource/cyclone.c | 1 +
drivers/clocksource/scx200_hrt.c | 1 +
include/linux/clocksource.h | 3 +++
7 files changed, 9 insertions(+)
Index: linux-2.6.17/arch/i386/kernel/hpet.c
===================================================================
--- linux-2.6.17.orig/arch/i386/kernel/hpet.c
+++ linux-2.6.17/arch/i386/kernel/hpet.c
@@ -27,6 +27,7 @@ static struct clocksource clocksource_hp
.mult = 0, /* set below */
.shift = HPET_SHIFT,
.is_continuous = 1,
+ .list = CLOCKSOURCE_LIST_INIT(clocksource_hpet.list),
};
static int __init init_hpet_clocksource(void)
Index: linux-2.6.17/arch/i386/kernel/i8253.c
===================================================================
--- linux-2.6.17.orig/arch/i386/kernel/i8253.c
+++ linux-2.6.17/arch/i386/kernel/i8253.c
@@ -105,6 +105,7 @@ static struct clocksource clocksource_pi
.mask = CLOCKSOURCE_MASK(32),
.mult = 0,
.shift = 20,
+ .list = CLOCKSOURCE_LIST_INIT(clocksource_pit.list),
};
static int __init init_pit_clocksource(void)
Index: linux-2.6.17/arch/i386/kernel/tsc.c
===================================================================
--- linux-2.6.17.orig/arch/i386/kernel/tsc.c
+++ linux-2.6.17/arch/i386/kernel/tsc.c
@@ -282,6 +282,7 @@ static struct clocksource clocksource_ts
.mult = 0, /* to be set */
.shift = 22,
.is_continuous = 1,
+ .list = CLOCKSOURCE_LIST_INIT(clocksource_tsc.list),
};
static int tsc_update_callback(void)
Index: linux-2.6.17/drivers/clocksource/acpi_pm.c
===================================================================
--- linux-2.6.17.orig/drivers/clocksource/acpi_pm.c
+++ linux-2.6.17/drivers/clocksource/acpi_pm.c
@@ -73,6 +73,7 @@ static struct clocksource clocksource_ac
.mult = 0, /*to be caluclated*/
.shift = 22,
.is_continuous = 1,
+ .list = CLOCKSOURCE_LIST_INIT(clocksource_acpi_pm.list),
};
Index: linux-2.6.17/drivers/clocksource/cyclone.c
===================================================================
--- linux-2.6.17.orig/drivers/clocksource/cyclone.c
+++ linux-2.6.17/drivers/clocksource/cyclone.c
@@ -32,6 +32,7 @@ static struct clocksource clocksource_cy
.mult = 10,
.shift = 0,
.is_continuous = 1,
+ .list = CLOCKSOURCE_LIST_INIT(clocksource_cyclone.list),
};
static int __init init_cyclone_clocksource(void)
Index: linux-2.6.17/drivers/clocksource/scx200_hrt.c
===================================================================
--- linux-2.6.17.orig/drivers/clocksource/scx200_hrt.c
+++ linux-2.6.17/drivers/clocksource/scx200_hrt.c
@@ -58,6 +58,7 @@ static struct clocksource cs_hrt = {
.read = read_hrt,
.mask = CLOCKSOURCE_MASK(32),
.is_continuous = 1,
+ .list = CLOCKSOURCE_LIST_INIT(cs_hrt.list),
/* mult, shift are set based on mhz27 flag */
};
Index: linux-2.6.17/include/linux/clocksource.h
===================================================================
--- linux-2.6.17.orig/include/linux/clocksource.h
+++ linux-2.6.17/include/linux/clocksource.h
@@ -82,6 +82,9 @@ struct clocksource {
/* simplify initialization of mask field */
#define CLOCKSOURCE_MASK(bits) (cycle_t)(bits<64 ? ((1ULL<<bits)-1) : -1)
+/* Abstracted list initialization */
+#define CLOCKSOURCE_LIST_INIT(x) PLIST_NODE_INIT(x, 0)
+
/**
* clocksource_khz2mult - calculates mult from khz and shift
* @khz: Clocksource frequency in KHz
--
next prev parent reply other threads:[~2006-08-04 3:26 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-04 3:24 [PATCH 00/10] -mm generic clocksoure API dwalker
2006-08-04 3:24 ` [PATCH 01/10] -mm clocksource: increase initcall priority dwalker
2006-08-04 18:39 ` john stultz
2006-08-04 3:24 ` [PATCH 02/10] -mm clocksource: small cleanup dwalker
2006-08-04 18:40 ` john stultz
2006-08-04 3:24 ` [PATCH 03/10] -mm clocksource: enable plist dwalker
2006-08-04 3:24 ` [PATCH 04/10] -mm clocksource: add some new API calls dwalker
2006-08-04 19:06 ` john stultz
2006-08-04 19:28 ` Daniel Walker
2006-08-04 21:05 ` Thomas Gleixner
2006-08-04 3:24 ` [PATCH 05/10] -mm clocksource: convert generic timeofday dwalker
2006-08-04 3:24 ` [PATCH 06/10] -mm clocksource: add block notifier dwalker
2006-08-04 3:24 ` [PATCH 07/10] -mm clocksource: remove update_callback dwalker
2006-08-04 19:28 ` john stultz
2006-08-04 3:24 ` [PATCH 08/10] -mm clocksource: cleanup on -mm dwalker
2006-08-04 19:53 ` john stultz
2006-08-04 21:11 ` Daniel Walker
2006-08-04 22:16 ` john stultz
2006-08-04 23:16 ` Daniel Walker
2006-08-04 3:24 ` dwalker [this message]
2006-08-04 3:24 ` [PATCH 10/10] -mm clocksource: add generic sched_clock() dwalker
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=20060804032523.221553000@mvista.com \
--to=dwalker@mvista.com \
--cc=akpm@osdl.org \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
/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.