Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
smp.c File Reference
#include <linux/kernel.h>
#include <linux/export.h>
#include <linux/sched.h>
#include <linux/smp.h>
#include <linux/interrupt.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/spinlock.h>
#include <linux/cache.h>
#include <linux/err.h>
#include <linux/device.h>
#include <linux/cpu.h>
#include <linux/notifier.h>
#include <linux/topology.h>
#include <asm/ptrace.h>
#include <linux/atomic.h>
#include <asm/irq.h>
#include <asm/page.h>
#include <asm/pgtable.h>
#include <asm/prom.h>
#include <asm/smp.h>
#include <asm/time.h>
#include <asm/machdep.h>
#include <asm/cputhreads.h>
#include <asm/cputable.h>
#include <asm/mpic.h>
#include <asm/vdso_datapage.h>
#include <asm/vdso.h>
#include <asm/debug.h>

Go to the source code of this file.

Macros

#define DBG(fmt...)
 

Functions

 DEFINE_PER_CPU (cpumask_var_t, cpu_sibling_map)
 
 DEFINE_PER_CPU (cpumask_var_t, cpu_core_map)
 
 EXPORT_PER_CPU_SYMBOL (cpu_sibling_map)
 
 EXPORT_PER_CPU_SYMBOL (cpu_core_map)
 
int smp_request_message_ipi (int virq, int msg)
 
void smp_send_reschedule (int cpu)
 
 EXPORT_SYMBOL_GPL (smp_send_reschedule)
 
void arch_send_call_function_single_ipi (int cpu)
 
void arch_send_call_function_ipi_mask (const struct cpumask *mask)
 
void smp_send_stop (void)
 
void __init smp_prepare_cpus (unsigned int max_cpus)
 
void __devinit smp_prepare_boot_cpu (void)
 
int __cpuinit __cpu_up (unsigned int cpu, struct task_struct *tidle)
 
int cpu_to_core_id (int cpu)
 
int cpu_core_index_of_thread (int cpu)
 
 EXPORT_SYMBOL_GPL (cpu_core_index_of_thread)
 
int cpu_first_thread_of_core (int core)
 
 EXPORT_SYMBOL_GPL (cpu_first_thread_of_core)
 
void __devinit start_secondary (void *unused)
 
int setup_profiling_timer (unsigned int multiplier)
 
void __init smp_cpus_done (unsigned int max_cpus)
 
int arch_sd_sibling_asym_packing (void)
 

Variables

struct thread_infosecondary_ti
 
struct smp_ops_t * smp_ops
 
volatile unsigned int cpu_callin_map [NR_CPUS]
 
int smt_enabled_at_boot = 1
 
const charsmp_ipi_name []
 
struct thread_infocurrent_set [NR_CPUS]
 

Macro Definition Documentation

#define DBG (   fmt...)

Definition at line 58 of file smp.c.

Function Documentation

int __cpuinit __cpu_up ( unsigned int  cpu,
struct task_struct tidle 
)

Definition at line 444 of file smp.c.

int arch_sd_sibling_asym_packing ( void  )

Definition at line 662 of file smp.c.

void arch_send_call_function_ipi_mask ( const struct cpumask mask)

Definition at line 263 of file smp.c.

void arch_send_call_function_single_ipi ( int  cpu)

Definition at line 258 of file smp.c.

int cpu_core_index_of_thread ( int  cpu)

Definition at line 532 of file smp.c.

int cpu_first_thread_of_core ( int  core)

Definition at line 538 of file smp.c.

int cpu_to_core_id ( int  cpu)

Definition at line 511 of file smp.c.

DEFINE_PER_CPU ( cpumask_var_t  ,
cpu_sibling_map   
)
DEFINE_PER_CPU ( cpumask_var_t  ,
cpu_core_map   
)
EXPORT_PER_CPU_SYMBOL ( cpu_sibling_map  )
EXPORT_PER_CPU_SYMBOL ( cpu_core_map  )
EXPORT_SYMBOL_GPL ( smp_send_reschedule  )
EXPORT_SYMBOL_GPL ( cpu_core_index_of_thread  )
EXPORT_SYMBOL_GPL ( cpu_first_thread_of_core  )
int setup_profiling_timer ( unsigned int  multiplier)

Definition at line 631 of file smp.c.

void __init smp_cpus_done ( unsigned int  max_cpus)

Definition at line 636 of file smp.c.

void __devinit smp_prepare_boot_cpu ( void  )

Definition at line 358 of file smp.c.

void __init smp_prepare_cpus ( unsigned int  max_cpus)

Definition at line 323 of file smp.c.

int smp_request_message_ipi ( int  virq,
int  msg 
)

Definition at line 161 of file smp.c.

void smp_send_reschedule ( int  cpu)

Definition at line 251 of file smp.c.

void smp_send_stop ( void  )

Definition at line 307 of file smp.c.

void __devinit start_secondary ( void unused)

Definition at line 567 of file smp.c.

Variable Documentation

volatile unsigned int cpu_callin_map[NR_CPUS]

Definition at line 78 of file smp.c.

struct thread_info* current_set[NR_CPUS]

Definition at line 312 of file smp.c.

struct thread_info* secondary_ti

Definition at line 66 of file smp.c.

const char* smp_ipi_name[]
Initial value:
= {
[PPC_MSG_CALL_FUNCTION] = "ipi call function",
[PPC_MSG_RESCHEDULE] = "ipi reschedule",
[PPC_MSG_CALL_FUNC_SINGLE] = "ipi call function single",
[PPC_MSG_DEBUGGER_BREAK] = "ipi debugger",
}

Definition at line 153 of file smp.c.

struct smp_ops_t* smp_ops

Definition at line 75 of file smp.c.

int smt_enabled_at_boot = 1

Definition at line 80 of file smp.c.