On 7/23/2015 7:59 PM, Hanjun Guo wrote:
On 07/22/2015 05:59 AM, Jonathan (Zhixiong) Zhang wrote:
From: "Jonathan (Zhixiong) Zhang" <[email protected]>

If the physical address has memory attributes defined by EFI
memmap as EFI_MEMORY_UC, the page protection type is
PROT_DEVICE_nGnRE. Otherwise, the page protection type is
PAGE_KERNEL.

...

[...]
+#ifdef    CONFIG_ACPI_APEI
+/*
+ * According to "Table 8 Map: EFI memory types to AArch64 memory types"
+ * of UEFI 2.5 section 2.3.6.1, each EFI memory type is mapped to
+ * corresponding MAIR attribute encoding.
+ */
+static inline pgprot_t arch_apei_get_mem_attribute(phys_addr_t addr)
+{
+    pgprot_t prot;
+
+    prot = efi_mem_attributes(addr);
+    if (prot & EFI_MEMORY_UC)
+        return PROT_DEVICE_nGnRnE;
+    if (prot & EFI_MEMORY_WC)
+        return PROT_NORMAL_NC;
+    if (prot & EFI_MEMORY_WT)
+        return PROT_NORMAL_WT;
+    return PAGE_KERNEL;
+}

The change log is not matching the code here, and the PROT_DEVICE_nGnRE
in the change log is wrong, if you fix that,

Acked-by: Hanjun Guo <[email protected]>
Thank you Hanjun for the catch and the ack.

--
Jonathan (Zhixiong) Zhang
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to