aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-i386/paravirt.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-i386/paravirt.h')
-rw-r--r--include/asm-i386/paravirt.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/asm-i386/paravirt.h b/include/asm-i386/paravirt.h
index 38e5164bd0e7..6ccf36499b2a 100644
--- a/include/asm-i386/paravirt.h
+++ b/include/asm-i386/paravirt.h
@@ -151,6 +151,8 @@ struct paravirt_ops
151 /* These two are jmp to, not actually called. */ 151 /* These two are jmp to, not actually called. */
152 void (fastcall *irq_enable_sysexit)(void); 152 void (fastcall *irq_enable_sysexit)(void);
153 void (fastcall *iret)(void); 153 void (fastcall *iret)(void);
154
155 void (fastcall *startup_ipi_hook)(int phys_apicid, unsigned long start_eip, unsigned long start_esp);
154}; 156};
155 157
156/* Mark a paravirt probe function. */ 158/* Mark a paravirt probe function. */
@@ -323,6 +325,13 @@ static inline unsigned long apic_read(unsigned long reg)
323} 325}
324#endif 326#endif
325 327
328#ifdef CONFIG_SMP
329static inline void startup_ipi_hook(int phys_apicid, unsigned long start_eip,
330 unsigned long start_esp)
331{
332 return paravirt_ops.startup_ipi_hook(phys_apicid, start_eip, start_esp);
333}
334#endif
326 335
327#define __flush_tlb() paravirt_ops.flush_tlb_user() 336#define __flush_tlb() paravirt_ops.flush_tlb_user()
328#define __flush_tlb_global() paravirt_ops.flush_tlb_kernel() 337#define __flush_tlb_global() paravirt_ops.flush_tlb_kernel()