Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a89780f3 authored by Jeremy Fitzhardinge's avatar Jeremy Fitzhardinge Committed by Ingo Molnar
Browse files

xen: fix mismerge in masking pte flags



Looks like a mismerge/misapply dropped one of the cases of pte flag
masking for Xen.  Also, only mask the flags for present ptes.

Signed-off-by: default avatarJeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent 261a5ec3
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -241,8 +241,10 @@ unsigned long long xen_pgd_val(pgd_t pgd)

pte_t xen_make_pte(unsigned long long pte)
{
	if (pte & 1)
	if (pte & _PAGE_PRESENT) {
		pte = phys_to_machine(XPADDR(pte)).maddr;
		pte &= ~(_PAGE_PCD | _PAGE_PWT);
	}

	return (pte_t){ .pte = pte };
}
@@ -288,10 +290,10 @@ unsigned long xen_pgd_val(pgd_t pgd)

pte_t xen_make_pte(unsigned long pte)
{
	if (pte & _PAGE_PRESENT)
	if (pte & _PAGE_PRESENT) {
		pte = phys_to_machine(XPADDR(pte)).maddr;

		pte &= ~(_PAGE_PCD | _PAGE_PWT);
	}

	return (pte_t){ pte };
}