aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/kvm
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2013-05-14 07:11:37 -0400
committerChristoffer Dall <christoffer.dall@linaro.org>2013-06-26 13:50:03 -0400
commitdac288f7b38a7439502b77dabcdf8a9a5c4ae721 (patch)
tree16fceb85ae06b082cd20a1a68044dc94c0826e9e /arch/arm/kvm
parent368074d908b785588778f00b4384376cd636f4a1 (diff)
ARM: KVM: use phys_addr_t instead of unsigned long long for HYP PGDs
HYP PGDs are passed around as phys_addr_t, except just before calling into the hypervisor init code, where they are cast to a rather weird unsigned long long. Just keep them around as phys_addr_t, which is what makes the most sense. Reported-by: Catalin Marinas <catalin.marinas@arm.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <cdall@cs.columbia.edu>
Diffstat (limited to 'arch/arm/kvm')
-rw-r--r--arch/arm/kvm/arm.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/arm/kvm/arm.c b/arch/arm/kvm/arm.c
index 37d216d814cd..327a1fb70fc9 100644
--- a/arch/arm/kvm/arm.c
+++ b/arch/arm/kvm/arm.c
@@ -789,8 +789,8 @@ long kvm_arch_vm_ioctl(struct file *filp,
789 789
790static void cpu_init_hyp_mode(void *dummy) 790static void cpu_init_hyp_mode(void *dummy)
791{ 791{
792 unsigned long long boot_pgd_ptr; 792 phys_addr_t boot_pgd_ptr;
793 unsigned long long pgd_ptr; 793 phys_addr_t pgd_ptr;
794 unsigned long hyp_stack_ptr; 794 unsigned long hyp_stack_ptr;
795 unsigned long stack_page; 795 unsigned long stack_page;
796 unsigned long vector_ptr; 796 unsigned long vector_ptr;
@@ -798,8 +798,8 @@ static void cpu_init_hyp_mode(void *dummy)
798 /* Switch from the HYP stub to our own HYP init vector */ 798 /* Switch from the HYP stub to our own HYP init vector */
799 __hyp_set_vectors(kvm_get_idmap_vector()); 799 __hyp_set_vectors(kvm_get_idmap_vector());
800 800
801 boot_pgd_ptr = (unsigned long long)kvm_mmu_get_boot_httbr(); 801 boot_pgd_ptr = kvm_mmu_get_boot_httbr();
802 pgd_ptr = (unsigned long long)kvm_mmu_get_httbr(); 802 pgd_ptr = kvm_mmu_get_httbr();
803 stack_page = __get_cpu_var(kvm_arm_hyp_stack_page); 803 stack_page = __get_cpu_var(kvm_arm_hyp_stack_page);
804 hyp_stack_ptr = stack_page + PAGE_SIZE; 804 hyp_stack_ptr = stack_page + PAGE_SIZE;
805 vector_ptr = (unsigned long)__kvm_hyp_vector; 805 vector_ptr = (unsigned long)__kvm_hyp_vector;