From 7f8936f2f8a577618b8b2b96aad6b0aefafc7bc5 Mon Sep 17 00:00:00 2001 From: Suresh Siddha Date: Mon, 14 Jul 2008 09:49:14 -0700 Subject: [PATCH] --- yaml --- r: 112671 b: refs/heads/master c: 511d9d34183662aada3890883e860b151d707e22 h: refs/heads/master i: 112669: 94ce95ff692c75c1d83b0bb5bd5b82ecb9e0421c 112667: 71fc2c9c48ce3898beb5825e0f2985c458ac18e8 112663: a20ffeb35d69347363160d9bb595afd06b418164 112655: e2337108ac43389a25f776281a0aa350d4d3cc8b 112639: 6447e5ac2a59007a7babd51b1271b0a4927ecb29 v: v3 --- [refs] | 2 +- trunk/arch/x86/lguest/boot.c | 35 ++++++++++++++++++++++++++++++++--- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index d763fc6cf1d1..ab76f20b74e7 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9a8f0e6b5dfe3b4f330fc82b16a4000f5688fce8 +refs/heads/master: 511d9d34183662aada3890883e860b151d707e22 diff --git a/trunk/arch/x86/lguest/boot.c b/trunk/arch/x86/lguest/boot.c index 0c45df20e2b3..675ee7a6475e 100644 --- a/trunk/arch/x86/lguest/boot.c +++ b/trunk/arch/x86/lguest/boot.c @@ -791,6 +791,37 @@ static u32 lguest_apic_read(u32 reg) { return 0; } + +static u64 lguest_apic_icr_read(void) +{ + return 0; +} + +static void lguest_apic_icr_write(u32 low, u32 id) +{ + /* Warn to see if there's any stray references */ + WARN_ON(1); +} + +static void lguest_apic_wait_icr_idle(void) +{ + return; +} + +static u32 lguest_apic_safe_wait_icr_idle(void) +{ + return 0; +} + +static struct apic_ops lguest_basic_apic_ops = { + .read = lguest_apic_read, + .write = lguest_apic_write, + .write_atomic = lguest_apic_write, + .icr_read = lguest_apic_icr_read, + .icr_write = lguest_apic_icr_write, + .wait_icr_idle = lguest_apic_wait_icr_idle, + .safe_wait_icr_idle = lguest_apic_safe_wait_icr_idle, +}; #endif /* STOP! Until an interrupt comes in. */ @@ -990,9 +1021,7 @@ __init void lguest_init(void) #ifdef CONFIG_X86_LOCAL_APIC /* apic read/write intercepts */ - pv_apic_ops.apic_write = lguest_apic_write; - pv_apic_ops.apic_write_atomic = lguest_apic_write; - pv_apic_ops.apic_read = lguest_apic_read; + apic_ops = &lguest_basic_apic_ops; #endif /* time operations */