X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-i386%2Fprocessor.h;h=5d06e6bd6ba0bff037197c5ff047d66f47faa9fd;hb=6d1d07e41a1de478a0da3cc14b4a8054ef09931c;hp=be258b0e5a5fb65e64da508e7a84fbc5eaa6cd45;hpb=1da177e4c3f41524e886b7f1b8a0c1fc7321cac2;p=linux-2.6 diff --git a/include/asm-i386/processor.h b/include/asm-i386/processor.h index be258b0e5a..5d06e6bd6b 100644 --- a/include/asm-i386/processor.h +++ b/include/asm-i386/processor.h @@ -98,6 +98,7 @@ extern struct cpuinfo_x86 cpu_data[]; #endif extern int phys_proc_id[NR_CPUS]; +extern int cpu_core_id[NR_CPUS]; extern char ignore_fpu_irq; extern void identify_cpu(struct cpuinfo_x86 *); @@ -499,6 +500,18 @@ static inline void load_esp0(struct tss_struct *tss, struct thread_struct *threa regs->esp = new_esp; \ } while (0) +/* + * These special macros can be used to get or set a debugging register + */ +#define get_debugreg(var, register) \ + __asm__("movl %%db" #register ", %0" \ + :"=r" (var)) +#define set_debugreg(value, register) \ + __asm__("movl %0,%%db" #register \ + : /* no output */ \ + :"r" (value)) + + /* Forward declaration, a strange C thing */ struct task_struct; struct mm_struct; @@ -678,5 +691,15 @@ extern void select_idle_routine(const struct cpuinfo_x86 *c); #define cache_line_size() (boot_cpu_data.x86_cache_alignment) extern unsigned long boot_option_idle_override; +extern void enable_sep_cpu(void); +extern int sysenter_setup(void); + +#ifdef CONFIG_MTRR +extern void mtrr_ap_init(void); +extern void mtrr_bp_init(void); +#else +#define mtrr_ap_init() do {} while (0) +#define mtrr_bp_init() do {} while (0) +#endif #endif /* __ASM_I386_PROCESSOR_H */