Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: fix microcode driver newly spewing warnings x86, PAT: Remove page granularity tracking for vm_insert_pfn maps x86: disable X86_PTRACE_BTS for now x86, documentation: kernel-parameters replace X86-32,X86-64 with X86 x86: pci-swiotlb.c swiotlb_dma_ops should be static x86, PAT: Remove duplicate memtype reserve in devmem mmap x86, PAT: Consolidate code in pat_x_mtrr_type() and reserve_memtype() x86, PAT: Changing memtype to WC ensuring no WB alias x86, PAT: Handle faults cleanly in set_memory_ APIs x86, PAT: Change order of cpa and free in set_memory_wb x86, CPA: Change idmap attribute before ioremap attribute setup
This commit is contained in:
commit
b9836e0837
9 changed files with 136 additions and 264 deletions
|
@ -280,15 +280,16 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr,
|
|||
return NULL;
|
||||
area->phys_addr = phys_addr;
|
||||
vaddr = (unsigned long) area->addr;
|
||||
if (ioremap_page_range(vaddr, vaddr + size, phys_addr, prot)) {
|
||||
|
||||
if (kernel_map_sync_memtype(phys_addr, size, prot_val)) {
|
||||
free_memtype(phys_addr, phys_addr + size);
|
||||
free_vm_area(area);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (ioremap_change_attr(vaddr, size, prot_val) < 0) {
|
||||
if (ioremap_page_range(vaddr, vaddr + size, phys_addr, prot)) {
|
||||
free_memtype(phys_addr, phys_addr + size);
|
||||
vunmap(area->addr);
|
||||
free_vm_area(area);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -374,7 +375,8 @@ static void __iomem *ioremap_default(resource_size_t phys_addr,
|
|||
* - UC_MINUS for non-WB-able memory with no other conflicting mappings
|
||||
* - Inherit from confliting mappings otherwise
|
||||
*/
|
||||
err = reserve_memtype(phys_addr, phys_addr + size, -1, &flags);
|
||||
err = reserve_memtype(phys_addr, phys_addr + size,
|
||||
_PAGE_CACHE_WB, &flags);
|
||||
if (err < 0)
|
||||
return NULL;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue