From b86bb35c7d82f097e6572d400527046245b877fd Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Fri, 22 May 2020 23:58:24 +0200 Subject: pc, pc64: do page attribute table (PAT) init early in cpuidentify() the page attribute table was initialized in mmuinit(), which is too late for bootscreen(). So now we check for PAT support and insert the write-combine entry early in cpuidentify(). this might have been the cause of some slow EFI framebuffers on machines with overlapping or insufficient MTRR entries. --- sys/src/9/pc/mmu.c | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'sys/src/9/pc/mmu.c') diff --git a/sys/src/9/pc/mmu.c b/sys/src/9/pc/mmu.c index c0b13674a..614339295 100644 --- a/sys/src/9/pc/mmu.c +++ b/sys/src/9/pc/mmu.c @@ -66,11 +66,6 @@ static void memglobal(void); #define VPTX(va) (((ulong)(va))>>12) #define vpd (vpt+VPTX(VPT)) -enum { - /* PAT entry used for write combining */ - PATWC = 7, -}; - void mmuinit(void) { @@ -125,14 +120,6 @@ mmuinit(void) taskswitch(PADDR(m->pdb), (ulong)m + BY2PG); ltr(TSSSEL); - - /* IA32_PAT write combining */ - if((MACHP(0)->cpuiddx & Pat) != 0 - && rdmsr(0x277, &v) != -1){ - v &= ~(255LL<<(PATWC*8)); - v |= 1LL<<(PATWC*8); /* WC */ - wrmsr(0x277, v); - } } /* -- cgit v1.2.3