Skip to content

Commit

Permalink
x86: allow user to impress friends.
Browse files Browse the repository at this point in the history
Impressing friends is a very important thing.
Do it in a separate function to make it even more
explicit, and ease integration.

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Glauber de Oliveira Costa authored and Ingo Molnar committed Apr 17, 2008
1 parent e1a14d0 commit 904541e
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 15 deletions.
20 changes: 20 additions & 0 deletions arch/x86/kernel/smpboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,26 @@ void __init smp_alloc_memory(void)
}
#endif

void impress_friends(void)
{
int cpu;
unsigned long bogosum = 0;
/*
* Allow the user to impress friends.
*/
Dprintk("Before bogomips.\n");
for_each_possible_cpu(cpu)
if (cpu_isset(cpu, cpu_callout_map))
bogosum += cpu_data(cpu).loops_per_jiffy;
printk(KERN_INFO
"Total of %d processors activated (%lu.%02lu BogoMIPS).\n",
cpus_weight(cpu_present_map),
bogosum/(500000/HZ),
(bogosum/(5000/HZ))%100);

Dprintk("Before bogocount - setting activated=1.\n");
}

#ifdef CONFIG_HOTPLUG_CPU
void remove_siblinginfo(int cpu)
{
Expand Down
17 changes: 2 additions & 15 deletions arch/x86/kernel/smpboot_32.c
Original file line number Diff line number Diff line change
Expand Up @@ -790,13 +790,13 @@ static int __init smp_sanity_check(unsigned max_cpus)
return 0;
}

extern void impress_friends(void);
/*
* Cycle through the processors sending APIC IPIs to boot each.
*/
static void __init smp_boot_cpus(unsigned int max_cpus)
{
int apicid, cpu, bit, kicked;
unsigned long bogosum = 0;

/*
* Setup boot CPU information
Expand Down Expand Up @@ -863,20 +863,7 @@ static void __init smp_boot_cpus(unsigned int max_cpus)
*/
smpboot_restore_warm_reset_vector();

/*
* Allow the user to impress friends.
*/
Dprintk("Before bogomips.\n");
for_each_possible_cpu(cpu)
if (cpu_isset(cpu, cpu_callout_map))
bogosum += cpu_data(cpu).loops_per_jiffy;
printk(KERN_INFO
"Total of %d processors activated (%lu.%02lu BogoMIPS).\n",
cpus_weight(cpu_present_map),
bogosum/(500000/HZ),
(bogosum/(5000/HZ))%100);

Dprintk("Before bogocount - setting activated=1.\n");
impress_friends();

if (smp_b_stepping)
printk(KERN_WARNING "WARNING: SMP operation may be unreliable with B stepping processors.\n");
Expand Down

0 comments on commit 904541e

Please sign in to comment.