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

Commit 56166230 authored by Ganapatrao Kulkarni's avatar Ganapatrao Kulkarni Committed by Will Deacon
Browse files

arm64, mm, numa: Add NUMA balancing support for arm64.



Enable NUMA balancing for arm64 platforms.
Add pte, pmd protnone helpers for use by automatic NUMA balancing.

Reviewed-by: default avatarSteve Capper <steve.capper@arm.com>
Reviewed-by: default avatarRobert Richter <rrichter@cavium.com>
Signed-off-by: default avatarGanapatrao Kulkarni <gkulkarni@caviumnetworks.com>
Signed-off-by: default avatarDavid Daney <david.daney@cavium.com>
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
parent 1a2db300
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ config ARM64
	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
	select ARCH_USE_CMPXCHG_LOCKREF
	select ARCH_SUPPORTS_ATOMIC_RMW
	select ARCH_SUPPORTS_NUMA_BALANCING
	select ARCH_WANT_OPTIONAL_GPIOLIB
	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
	select ARCH_WANT_FRAME_POINTERS
+15 −0
Original line number Diff line number Diff line
@@ -266,6 +266,21 @@ static inline pgprot_t mk_sect_prot(pgprot_t prot)
	return __pgprot(pgprot_val(prot) & ~PTE_TABLE_BIT);
}

#ifdef CONFIG_NUMA_BALANCING
/*
 * See the comment in include/asm-generic/pgtable.h
 */
static inline int pte_protnone(pte_t pte)
{
	return (pte_val(pte) & (PTE_VALID | PTE_PROT_NONE)) == PTE_PROT_NONE;
}

static inline int pmd_protnone(pmd_t pmd)
{
	return pte_protnone(pmd_pte(pmd));
}
#endif

/*
 * THP definitions.
 */