Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
hardwall.c File Reference
#include <linux/fs.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/rwsem.h>
#include <linux/kprobes.h>
#include <linux/sched.h>
#include <linux/hardirq.h>
#include <linux/uaccess.h>
#include <linux/smp.h>
#include <linux/cdev.h>
#include <linux/compat.h>
#include <asm/hardwall.h>
#include <asm/traps.h>
#include <asm/siginfo.h>
#include <asm/irq_regs.h>
#include <arch/interrupts.h>
#include <arch/spr_def.h>

Go to the source code of this file.

Data Structures

struct  hardwall_type
 
struct  hardwall_info
 

Macros

#define mtspr_XDN(hwt, name, val)
 
#define mtspr_MPL_XDN(hwt, name, val)
 
#define mfspr_XDN(hwt, name)   ((hwt)->is_idn ? __insn_mfspr(SPR_IDN_##name) : __insn_mfspr(SPR_UDN_##name))
 
#define cpu_online_set(cpu, dst)
 

Enumerations

enum  hardwall_index { HARDWALL_UDN = 0, HARDWALL_IDN = 1, HARDWALL_IPI = 2, _HARDWALL_TYPES }
 
enum  direction_protect {
  N_PROTECT = (1 << 0), E_PROTECT = (1 << 1), S_PROTECT = (1 << 2), W_PROTECT = (1 << 3),
  C_PROTECT = (1 << 4)
}
 

Functions

 early_param ("noudn", noudn)
 
 early_param ("noidn", noidn)
 
 early_param ("noipi", noipi)
 
void __kprobes do_hardwall_trap (struct pt_regs *regs, int fault_num)
 
void grant_hardwall_mpls (struct hardwall_type *hwt)
 
void restrict_hardwall_mpls (struct hardwall_type *hwt)
 
void hardwall_switch_tasks (struct task_struct *prev, struct task_struct *next)
 
int hardwall_ipi_valid (int cpu)
 
void hardwall_deactivate_all (struct task_struct *task)
 
void reset_network_state (void)
 
int proc_pid_hardwall (struct task_struct *task, char *buffer)
 
void proc_tile_hardwall_init (struct proc_dir_entry *root)
 
 late_initcall (dev_hardwall_init)
 

Macro Definition Documentation

#define cpu_online_set (   cpu,
  dst 
)
Value:
do { \
if (cpu_online(cpu)) \
cpumask_set_cpu(cpu, dst); \
} while (0)

Definition at line 188 of file hardwall.c.

#define mfspr_XDN (   hwt,
  name 
)    ((hwt)->is_idn ? __insn_mfspr(SPR_IDN_##name) : __insn_mfspr(SPR_UDN_##name))

Definition at line 183 of file hardwall.c.

#define mtspr_MPL_XDN (   hwt,
  name,
  val 
)
Value:
do { \
if ((hwt)->is_idn) \
__insn_mtspr(SPR_MPL_IDN_##name, (val)); \
else \
__insn_mtspr(SPR_MPL_UDN_##name, (val)); \
} while (0)

Definition at line 176 of file hardwall.c.

#define mtspr_XDN (   hwt,
  name,
  val 
)
Value:
do { \
if ((hwt)->is_idn) \
__insn_mtspr(SPR_IDN_##name, (val)); \
else \
__insn_mtspr(SPR_UDN_##name, (val)); \
} while (0)

Definition at line 169 of file hardwall.c.

Enumeration Type Documentation

Enumerator:
N_PROTECT 
E_PROTECT 
S_PROTECT 
W_PROTECT 
C_PROTECT 

Definition at line 242 of file hardwall.c.

Enumerator:
HARDWALL_UDN 
HARDWALL_IDN 
HARDWALL_IPI 
_HARDWALL_TYPES 

Definition at line 52 of file hardwall.c.

Function Documentation

void __kprobes do_hardwall_trap ( struct pt_regs regs,
int  fault_num 
)

Definition at line 320 of file hardwall.c.

early_param ( "noudn"  ,
noudn   
)
early_param ( "noidn"  ,
noidn   
)
early_param ( "noipi"  ,
noipi   
)
void grant_hardwall_mpls ( struct hardwall_type hwt)

Definition at line 420 of file hardwall.c.

void hardwall_deactivate_all ( struct task_struct task)

Definition at line 660 of file hardwall.c.

int hardwall_ipi_valid ( int  cpu)

Definition at line 473 of file hardwall.c.

void hardwall_switch_tasks ( struct task_struct prev,
struct task_struct next 
)

Definition at line 458 of file hardwall.c.

late_initcall ( dev_hardwall_init  )
int proc_pid_hardwall ( struct task_struct task,
char buffer 
)

Definition at line 942 of file hardwall.c.

void proc_tile_hardwall_init ( struct proc_dir_entry root)

Definition at line 955 of file hardwall.c.

void reset_network_state ( void  )

Definition at line 820 of file hardwall.c.

void restrict_hardwall_mpls ( struct hardwall_type hwt)

Definition at line 439 of file hardwall.c.