mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-25 06:30:54 +07:00
[IA64] ioremap() should prefer WB over UC
efi_memmap_init() collects full granules of WB memory, without regard for whether they also support UC. So in order for ioremap() to work for main memory, it must prefer WB mappings when possible. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
parent
3283a67d86
commit
c1c57d7671
@ -21,12 +21,12 @@ __ioremap (unsigned long offset, unsigned long size)
|
||||
void __iomem *
|
||||
ioremap (unsigned long offset, unsigned long size)
|
||||
{
|
||||
if (efi_mem_attribute_range(offset, size, EFI_MEMORY_UC))
|
||||
return __ioremap(offset, size);
|
||||
|
||||
if (efi_mem_attribute_range(offset, size, EFI_MEMORY_WB))
|
||||
return phys_to_virt(offset);
|
||||
|
||||
if (efi_mem_attribute_range(offset, size, EFI_MEMORY_UC))
|
||||
return __ioremap(offset, size);
|
||||
|
||||
/*
|
||||
* Someday this should check ACPI resources so we
|
||||
* can do the right thing for hot-plugged regions.
|
||||
|
Loading…
Reference in New Issue
Block a user