Amos Waterland
2006-Aug-22 03:12 UTC
[Xen-devel] [PATCH] Use macro to walk through online cpus
There are two cases that I know of in xen/common where we waste cycles
walking through a list from zero to NR_CPUS. This patch makes them use
for_each_online_cpu instead.
Signed-off-by: Amos Waterland <apw@us.ibm.com>
---
schedule.c | 2 +-
timer.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff -r 326e6736d92b xen/common/schedule.c
--- a/xen/common/schedule.c Mon Aug 21 10:04:37 2006 -0400
+++ b/xen/common/schedule.c Mon Aug 21 22:31:12 2006 -0400
@@ -633,7 +633,7 @@ void __init scheduler_init(void)
open_softirq(SCHEDULE_SOFTIRQ, __enter_scheduler);
- for ( i = 0; i < NR_CPUS; i++ )
+ for_each_online_cpu( i )
{
spin_lock_init(&per_cpu(schedule_data, i).schedule_lock);
init_timer(&per_cpu(schedule_data, i).s_timer, s_timer_fn, NULL,
i);
diff -r 326e6736d92b xen/common/timer.c
--- a/xen/common/timer.c Mon Aug 21 10:04:37 2006 -0400
+++ b/xen/common/timer.c Mon Aug 21 22:31:21 2006 -0400
@@ -382,7 +382,7 @@ void __init timer_init(void)
SET_HEAP_SIZE(&dummy_heap, 0);
SET_HEAP_LIMIT(&dummy_heap, 0);
- for ( i = 0; i < NR_CPUS; i++ )
+ for_each_online_cpu( i )
{
spin_lock_init(&per_cpu(timers, i).lock);
per_cpu(timers, i).heap = &dummy_heap;
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
Keir Fraser
2006-Aug-22 07:15 UTC
Re: [Xen-devel] [PATCH] Use macro to walk through online cpus
On 22/8/06 4:12 am, "Amos Waterland" <apw@us.ibm.com> wrote:> There are two cases that I know of in xen/common where we waste cycles > walking through a list from zero to NR_CPUS. This patch makes them use > for_each_online_cpu instead. > > Signed-off-by: Amos Waterland <apw@us.ibm.com>Better to use for_each_cpu() in case any arch supports CPU hotplug in future. The wasted cycles are unimportant since these loops run only once, at boot time. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel