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

Commit 0d4768ee authored by Laura Abbott's avatar Laura Abbott Committed by Mark Salyzyn
Browse files

BACKPORT: arm64: Use __pa_symbol for kernel symbols



(cherry-pick from commit 2077be6783b5936c3daa838d8addbb635667927f)

__pa_symbol is technically the marcro that should be used for kernel
symbols. Switch to this as a pre-requisite for DEBUG_VIRTUAL which
will do bounds checking.

Reviewed-by: default avatarMark Rutland <mark.rutland@arm.com>
Tested-by: default avatarMark Rutland <mark.rutland@arm.com>
Signed-off-by: default avatarLaura Abbott <labbott@redhat.com>
Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
Bug: 20045882
Bug: 63737556
Change-Id: Ibef89e5935c9562fa69e946778c705636c1ca61e
parent e0393a4d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -243,7 +243,7 @@ static inline void __kvm_flush_dcache_pud(pud_t pud)
	kvm_flush_dcache_to_poc(page_address(page), PUD_SIZE);
}

#define kvm_virt_to_phys(x)		__virt_to_phys((unsigned long)(x))
#define kvm_virt_to_phys(x)		__pa_symbol(x)

void kvm_set_way_flush(struct kvm_vcpu *vcpu);
void kvm_toggle_cache(struct kvm_vcpu *vcpu, bool was_enabled);
+1 −0
Original line number Diff line number Diff line
@@ -131,6 +131,7 @@ static inline void *phys_to_virt(phys_addr_t x)
#define __va(x)			((void *)__phys_to_virt((phys_addr_t)(x)))
#define pfn_to_kaddr(pfn)	__va((pfn) << PAGE_SHIFT)
#define virt_to_pfn(x)      __phys_to_pfn(__virt_to_phys(x))
#define sym_to_pfn(x)	    __phys_to_pfn(__pa_symbol(x))

/*
 *  virt_to_page(k)	convert a _valid_ virtual address to struct page *
+1 −1
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ static inline void contextidr_thread_switch(struct task_struct *next)
 */
static inline void cpu_set_reserved_ttbr0(void)
{
	unsigned long ttbr = virt_to_phys(empty_zero_page);
	unsigned long ttbr = __pa_symbol(empty_zero_page);

	asm(
	"	msr	ttbr0_el1, %0			// set TTBR0\n"
+1 −1
Original line number Diff line number Diff line
@@ -109,7 +109,7 @@ extern void __pgd_error(const char *file, int line, unsigned long val);
 * for zero-mapped memory areas etc..
 */
extern unsigned long empty_zero_page[PAGE_SIZE / sizeof(unsigned long)];
#define ZERO_PAGE(vaddr)	virt_to_page(empty_zero_page)
#define ZERO_PAGE(vaddr)	phys_to_page(__pa_symbol(empty_zero_page))

#define pte_ERROR(pte)		__pte_error(__FILE__, __LINE__, pte_val(pte))

+1 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <linux/bsearch.h>
#include <linux/sort.h>
#include <linux/types.h>
#include <linux/mm.h>
#include <asm/cpu.h>
#include <asm/cpufeature.h>
#include <asm/cpu_ops.h>
Loading