Author: jkim
Date: Mon Aug 30 21:19:42 2010
New Revision: 212026
URL: http://svn.freebsd.org/changeset/base/212026

Log:
  Save MSR_FSBASE, MSR_GSBASE and MSR_KGSBASE directly to PCB as we do not use
  these values in the function.

Modified:
  head/sys/amd64/amd64/cpu_switch.S

Modified: head/sys/amd64/amd64/cpu_switch.S
==============================================================================
--- head/sys/amd64/amd64/cpu_switch.S   Mon Aug 30 21:18:59 2010        
(r212025)
+++ head/sys/amd64/amd64/cpu_switch.S   Mon Aug 30 21:19:42 2010        
(r212026)
@@ -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)
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to