Save MSR_FSBASE, MSR_GSBASE and MSR_KGSBASE directly to PCB as we do not use

these values in the function.
This commit is contained in:
Jung-uk Kim 2010-08-30 21:19:42 +00:00
parent 67d640fc21
commit 305c5c0acb

View File

@ -338,19 +338,16 @@ ENTRY(savectx)
movl $MSR_FSBASE,%ecx
rdmsr
shlq $32,%rdx
leaq (%rax,%rdx),%rax
movq %rax,PCB_FSBASE(%rdi)
movl %eax,PCB_FSBASE(%rdi)
movl %edx,PCB_FSBASE+4(%rdi)
movl $MSR_GSBASE,%ecx
rdmsr
shlq $32,%rdx
leaq (%rax,%rdx),%rax
movq %rax,PCB_GSBASE(%rdi)
movl %eax,PCB_GSBASE(%rdi)
movl %edx,PCB_GSBASE+4(%rdi)
movl $MSR_KGSBASE,%ecx
rdmsr
shlq $32,%rdx
leaq (%rax,%rdx),%rax
movq %rax,PCB_KGSBASE(%rdi)
movl %eax,PCB_KGSBASE(%rdi)
movl %edx,PCB_KGSBASE+4(%rdi)
sgdt PCB_GDT(%rdi)
sidt PCB_IDT(%rdi)