aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/lguest/boot.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/lguest/boot.c')
-rw-r--r--arch/x86/lguest/boot.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c
index da2e314f61b5..bc9893f2c383 100644
--- a/arch/x86/lguest/boot.c
+++ b/arch/x86/lguest/boot.c
@@ -55,7 +55,7 @@
55#include <linux/lguest_launcher.h> 55#include <linux/lguest_launcher.h>
56#include <linux/virtio_console.h> 56#include <linux/virtio_console.h>
57#include <linux/pm.h> 57#include <linux/pm.h>
58#include <asm/apic.h> 58#include <asm/genapic.h>
59#include <asm/lguest.h> 59#include <asm/lguest.h>
60#include <asm/paravirt.h> 60#include <asm/paravirt.h>
61#include <asm/param.h> 61#include <asm/param.h>
@@ -828,13 +828,14 @@ static u32 lguest_apic_safe_wait_icr_idle(void)
828 return 0; 828 return 0;
829} 829}
830 830
831static struct apic_ops lguest_basic_apic_ops = { 831static void set_lguest_basic_apic_ops(void)
832 .read = lguest_apic_read, 832{
833 .write = lguest_apic_write, 833 apic->read = lguest_apic_read;
834 .icr_read = lguest_apic_icr_read, 834 apic->write = lguest_apic_write;
835 .icr_write = lguest_apic_icr_write, 835 apic->icr_read = lguest_apic_icr_read;
836 .wait_icr_idle = lguest_apic_wait_icr_idle, 836 apic->icr_write = lguest_apic_icr_write;
837 .safe_wait_icr_idle = lguest_apic_safe_wait_icr_idle, 837 apic->wait_icr_idle = lguest_apic_wait_icr_idle;
838 apic->safe_wait_icr_idle = lguest_apic_safe_wait_icr_idle;
838}; 839};
839#endif 840#endif
840 841
@@ -1035,7 +1036,7 @@ __init void lguest_init(void)
1035 1036
1036#ifdef CONFIG_X86_LOCAL_APIC 1037#ifdef CONFIG_X86_LOCAL_APIC
1037 /* apic read/write intercepts */ 1038 /* apic read/write intercepts */
1038 apic_ops = &lguest_basic_apic_ops; 1039 set_lguest_basic_apic_ops();
1039#endif 1040#endif
1040 1041
1041 /* time operations */ 1042 /* time operations */