Author: royger
Date: Wed Jul 23 15:53:29 2014
New Revision: 269017
URL: http://svnweb.freebsd.org/changeset/base/269017

Log:
  don't set CR4 PSE bit on amd64
  
  Setting PSE together with PAE or in long mode just makes the PSE bit
  completely ignored, so don't set it.
  
  Sponsored by: Citrix Systems R&D
  Reviewed by: kib

Modified:
  head/sys/amd64/acpica/acpi_wakecode.S
  head/sys/amd64/amd64/mpboot.S
  head/sys/amd64/amd64/pmap.c
  head/sys/boot/i386/libi386/amd64_tramp.S

Modified: head/sys/amd64/acpica/acpi_wakecode.S
==============================================================================
--- head/sys/amd64/acpica/acpi_wakecode.S       Wed Jul 23 15:12:17 2014        
(r269016)
+++ head/sys/amd64/acpica/acpi_wakecode.S       Wed Jul 23 15:53:29 2014        
(r269017)
@@ -148,9 +148,9 @@ wakeup_32:
        mov     $bootdata32 - bootgdt, %eax
        mov     %ax, %ds
 
-       /* Turn on the PAE and PSE bits for when paging is enabled */
+       /* Turn on the PAE bit for when paging is enabled */
        mov     %cr4, %eax
-       orl     $(CR4_PAE | CR4_PSE), %eax
+       orl     $CR4_PAE, %eax
        mov     %eax, %cr4
 
        /*

Modified: head/sys/amd64/amd64/mpboot.S
==============================================================================
--- head/sys/amd64/amd64/mpboot.S       Wed Jul 23 15:12:17 2014        
(r269016)
+++ head/sys/amd64/amd64/mpboot.S       Wed Jul 23 15:53:29 2014        
(r269017)
@@ -90,9 +90,9 @@ protmode:
        mov     $bootdata-gdt, %eax
        mov     %ax, %ds
 
-       /* Turn on the PAE, PSE and PGE bits for when paging is enabled */
+       /* Turn on the PAE bit for when paging is enabled */
        mov     %cr4, %eax
-       orl     $(CR4_PAE | CR4_PSE), %eax
+       orl     $CR4_PAE, %eax
        mov     %eax, %cr4
 
        /*

Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c Wed Jul 23 15:12:17 2014        (r269016)
+++ head/sys/amd64/amd64/pmap.c Wed Jul 23 15:53:29 2014        (r269017)
@@ -831,7 +831,7 @@ pmap_bootstrap(vm_paddr_t *firstaddr)
 
 
        /* XXX do %cr0 as well */
-       load_cr4(rcr4() | CR4_PGE | CR4_PSE);
+       load_cr4(rcr4() | CR4_PGE);
        load_cr3(KPML4phys);
        if (cpu_stdext_feature & CPUID_STDEXT_SMEP)
                load_cr4(rcr4() | CR4_SMEP);

Modified: head/sys/boot/i386/libi386/amd64_tramp.S
==============================================================================
--- head/sys/boot/i386/libi386/amd64_tramp.S    Wed Jul 23 15:12:17 2014        
(r269016)
+++ head/sys/boot/i386/libi386/amd64_tramp.S    Wed Jul 23 15:53:29 2014        
(r269017)
@@ -84,7 +84,7 @@ amd64_tramp:
 
        /* Turn on PAE */
        movl    %cr4, %eax
-       orl     $(CR4_PAE | CR4_PSE), %eax
+       orl     $CR4_PAE, %eax
        movl    %eax, %cr4
 
        /* Set %cr3 for PT4 */
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to