• 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
i386.c 9.7 KB