diff mbox

[QEMU-KVM,2/7] test: set up per-cpu area

Message ID 1253523338-22784-3-git-send-email-avi@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Avi Kivity Sept. 21, 2009, 8:55 a.m. UTC
Currently sharing space with the stack.

Signed-off-by: Avi Kivity <avi@redhat.com>
---
 kvm/user/test/x86/cstart64.S |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/kvm/user/test/x86/cstart64.S b/kvm/user/test/x86/cstart64.S
index e5554ba..f1a9d09 100644
--- a/kvm/user/test/x86/cstart64.S
+++ b/kvm/user/test/x86/cstart64.S
@@ -80,9 +80,19 @@  mb_flags = 0x0
 	# multiboot header
 	.long mb_magic, mb_flags, 0 - (mb_magic + mb_flags)
 
+MSR_GS_BASE = 0xc0000101
+
+.macro setup_percpu_area
+	lea -4096(%esp), %eax
+	mov $0, %edx
+	mov $MSR_GS_BASE, %ecx
+	wrmsr
+.endm
+
 .globl start
 start:
 	mov $stacktop, %esp
+	setup_percpu_area
 	call prepare_64
 	jmpl $8, $start64
 
@@ -142,6 +152,7 @@  ap_start32:
 	mov %ax, %ss
 	mov $-4096, %esp
 	lock/xaddl %esp, smp_stacktop
+	setup_percpu_area
 	call prepare_64
 	ljmpl $8, $ap_start64