Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
smp.c File Reference
#include <linux/workqueue.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/mm.h>
#include <linux/err.h>
#include <linux/spinlock.h>
#include <linux/kernel_stat.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/irqflags.h>
#include <linux/cpu.h>
#include <linux/slab.h>
#include <linux/crash_dump.h>
#include <asm/asm-offsets.h>
#include <asm/switch_to.h>
#include <asm/facility.h>
#include <asm/ipl.h>
#include <asm/setup.h>
#include <asm/irq.h>
#include <asm/tlbflush.h>
#include <asm/vtimer.h>
#include <asm/lowcore.h>
#include <asm/sclp.h>
#include <asm/vdso.h>
#include <asm/debug.h>
#include <asm/os_info.h>
#include <asm/sigp.h>
#include "entry.h"

Go to the source code of this file.

Data Structures

struct  pcpu
 
struct  ec_creg_mask_parms
 

Macros

#define KMSG_COMPONENT   "cpu"
 
#define pr_fmt(fmt)   KMSG_COMPONENT ": " fmt
 

Enumerations

enum  { ec_schedule = 0, ec_call_function, ec_call_function_single, ec_stop_cpu }
 
enum  { CPU_STATE_STANDBY, CPU_STATE_CONFIGURED }
 

Functions

 DEFINE_MUTEX (smp_cpu_state_mutex)
 
void smp_call_online_cpu (void(*func)(void *), void *data)
 
void smp_call_ipl_cpu (void(*func)(void *), void *data)
 
int smp_find_processor_id (u16 address)
 
int smp_vcpu_scheduled (int cpu)
 
void smp_yield (void)
 
void smp_yield_cpu (int cpu)
 
void smp_emergency_stop (cpumask_t *cpumask)
 
void smp_send_stop (void)
 
void smp_stop_cpu (void)
 
void arch_send_call_function_ipi_mask (const struct cpumask *mask)
 
void arch_send_call_function_single_ipi (int cpu)
 
void smp_ptlb_all (void)
 
 EXPORT_SYMBOL (smp_ptlb_all)
 
void smp_send_reschedule (int cpu)
 
void smp_ctl_set_bit (int cr, int bit)
 
 EXPORT_SYMBOL (smp_ctl_set_bit)
 
void smp_ctl_clear_bit (int cr, int bit)
 
 EXPORT_SYMBOL (smp_ctl_clear_bit)
 
void smp_cpu_set_polarization (int cpu, int val)
 
int smp_cpu_get_polarization (int cpu)
 
int __cpuinit __cpu_up (unsigned int cpu, struct task_struct *tidle)
 
 early_param ("possible_cpus", setup_possible_cpus)
 
void __init smp_prepare_cpus (unsigned int max_cpus)
 
void __init smp_prepare_boot_cpu (void)
 
void __init smp_cpus_done (unsigned int max_cpus)
 
void __init smp_setup_processor_id (void)
 
int setup_profiling_timer (unsigned int multiplier)
 
 subsys_initcall (s390_smp_init)
 

Macro Definition Documentation

#define KMSG_COMPONENT   "cpu"

Definition at line 18 of file smp.c.

#define pr_fmt (   fmt)    KMSG_COMPONENT ": " fmt

Definition at line 19 of file smp.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
ec_schedule 
ec_call_function 
ec_call_function_single 
ec_stop_cpu 

Definition at line 50 of file smp.c.

anonymous enum
Enumerator:
CPU_STATE_STANDBY 
CPU_STATE_CONFIGURED 

Definition at line 57 of file smp.c.

Function Documentation

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

Definition at line 718 of file smp.c.

void arch_send_call_function_ipi_mask ( const struct cpumask mask)

Definition at line 458 of file smp.c.

void arch_send_call_function_single_ipi ( int  cpu)

Definition at line 466 of file smp.c.

DEFINE_MUTEX ( smp_cpu_state_mutex  )
early_param ( "possible_cpus"  ,
setup_possible_cpus   
)
EXPORT_SYMBOL ( smp_ptlb_all  )
EXPORT_SYMBOL ( smp_ctl_set_bit  )
EXPORT_SYMBOL ( smp_ctl_clear_bit  )
int setup_profiling_timer ( unsigned int  multiplier)

Definition at line 835 of file smp.c.

void smp_call_ipl_cpu ( void(*)(void *)  func,
void data 
)

Definition at line 323 of file smp.c.

void smp_call_online_cpu ( void(*)(void *)  func,
void data 
)

Definition at line 308 of file smp.c.

int smp_cpu_get_polarization ( int  cpu)

Definition at line 600 of file smp.c.

void smp_cpu_set_polarization ( int  cpu,
int  val 
)

Definition at line 595 of file smp.c.

void __init smp_cpus_done ( unsigned int  max_cpus)

Definition at line 820 of file smp.c.

void smp_ctl_clear_bit ( int  cr,
int  bit 
)

Definition at line 533 of file smp.c.

void smp_ctl_set_bit ( int  cr,
int  bit 
)

Definition at line 522 of file smp.c.

void smp_emergency_stop ( cpumask_t cpumask)

Definition at line 363 of file smp.c.

int smp_find_processor_id ( u16  address)

Definition at line 329 of file smp.c.

void __init smp_prepare_boot_cpu ( void  )

Definition at line 804 of file smp.c.

void __init smp_prepare_cpus ( unsigned int  max_cpus)

Definition at line 793 of file smp.c.

void smp_ptlb_all ( void  )

Definition at line 480 of file smp.c.

void smp_send_reschedule ( int  cpu)

Definition at line 492 of file smp.c.

void smp_send_stop ( void  )

Definition at line 390 of file smp.c.

void __init smp_setup_processor_id ( void  )

Definition at line 824 of file smp.c.

void smp_stop_cpu ( void  )

Definition at line 418 of file smp.c.

int smp_vcpu_scheduled ( int  cpu)

Definition at line 339 of file smp.c.

void smp_yield ( void  )

Definition at line 344 of file smp.c.

void smp_yield_cpu ( int  cpu)

Definition at line 350 of file smp.c.

subsys_initcall ( s390_smp_init  )