• Suresh Siddha's avatar
    x86 PAT: fix performance drop for glx, use UC minus for ioremap(),... · de33c442
    Suresh Siddha authored
    x86 PAT: fix performance drop for glx, use UC minus for ioremap(), ioremap_nocache() and pci_mmap_page_range()
    
    Use UC_MINUS for ioremap(), ioremap_nocache() instead of strong UC.
    Once all the X drivers move to ioremap_wc(), we can go back to strong
    UC semantics for ioremap() and ioremap_nocache().
    
    To avoid attribute aliasing issues, pci_mmap_page_range() will also
    use UC_MINUS for default non write-combining mapping request.
    
    Next steps:
    	a) change all the video drivers using ioremap() or ioremap_nocache()
    	   and adding WC MTTR using mttr_add() to ioremap_wc()
    
    	b) for strict usage, we can go back to strong uc semantics
    	   for ioremap() and ioremap_nocache() after some grace period for
    	   completing step-a.
    
    	c) user level X server needs to use the appropriate method for setting
    	   up WC mapping (like using resourceX_wc sysfs file instead of
    	   adding MTRR for WC and using /dev/mem or resourceX under /sys)
    Signed-off-by: default avatarSuresh Siddha <suresh.b.siddha@intel.com>
    Signed-off-by: default avatarVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    de33c442
Name
Last commit
Last update
..
alpha Loading commit data...
arm Loading commit data...
avr32 Loading commit data...
blackfin Loading commit data...
cris Loading commit data...
frv Loading commit data...
h8300 Loading commit data...
ia64 Loading commit data...
m32r Loading commit data...
m68k Loading commit data...
m68knommu Loading commit data...
mips Loading commit data...
mn10300 Loading commit data...
parisc Loading commit data...
powerpc Loading commit data...
ppc Loading commit data...
s390 Loading commit data...
sh Loading commit data...
sparc Loading commit data...
sparc64 Loading commit data...
um Loading commit data...
v850 Loading commit data...
x86 Loading commit data...
xtensa Loading commit data...
.gitignore Loading commit data...
Kconfig Loading commit data...