@@ -327,6 +327,9 @@ static inline unsigned int kvm_get_vmid_bits(void)
struct kvm_s2_trans {
phys_addr_t output;
phys_addr_t block_size;
+ bool writable;
+ bool readable;
+ int level;
};
#ifdef CONFIG_KVM_ARM_NESTED_HYP
@@ -236,6 +236,9 @@ static int walk_nested_s2_pgd(struct kvm_vcpu *vcpu, phys_addr_t ipa,
(ipa & GENMASK_ULL(addr_bottom - 1, 0));
out->output = paddr;
out->block_size = 1UL << ((3 - level) * stride + wi->pgshift);
+ out->readable = desc & (0b01 << 6);
+ out->writable = desc & (0b10 << 6);
+ out->level = level;
return 0;
}