@@ -49,47 +49,6 @@ DECLARE_KVM_NVHE_PER_CPU(unsigned long [OVERFLOW_STACK_SIZE/sizeof(long)], overf
49
49
DECLARE_KVM_NVHE_PER_CPU (struct kvm_nvhe_stacktrace_info , kvm_stacktrace_info );
50
50
DECLARE_PER_CPU (unsigned long, kvm_arm_hyp_stack_page );
51
51
52
- /*
53
- * kvm_nvhe_stack_kern_va - Convert KVM nVHE HYP stack addresses to a kernel VAs
54
- *
55
- * The nVHE hypervisor stack is mapped in the flexible 'private' VA range, to
56
- * allow for guard pages below the stack. Consequently, the fixed offset address
57
- * translation macros won't work here.
58
- *
59
- * The kernel VA is calculated as an offset from the kernel VA of the hypervisor
60
- * stack base.
61
- *
62
- * Returns true on success and updates @addr to its corresponding kernel VA;
63
- * otherwise returns false.
64
- */
65
- static inline bool kvm_nvhe_stack_kern_va (unsigned long * addr ,
66
- enum stack_type type )
67
- {
68
- struct kvm_nvhe_stacktrace_info * stacktrace_info ;
69
- unsigned long hyp_base , kern_base , hyp_offset ;
70
-
71
- stacktrace_info = this_cpu_ptr_nvhe_sym (kvm_stacktrace_info );
72
-
73
- switch (type ) {
74
- case STACK_TYPE_HYP :
75
- kern_base = (unsigned long )* this_cpu_ptr (& kvm_arm_hyp_stack_page );
76
- hyp_base = (unsigned long )stacktrace_info -> stack_base ;
77
- break ;
78
- case STACK_TYPE_OVERFLOW :
79
- kern_base = (unsigned long )this_cpu_ptr_nvhe_sym (overflow_stack );
80
- hyp_base = (unsigned long )stacktrace_info -> overflow_stack_base ;
81
- break ;
82
- default :
83
- return false;
84
- }
85
-
86
- hyp_offset = * addr - hyp_base ;
87
-
88
- * addr = kern_base + hyp_offset ;
89
-
90
- return true;
91
- }
92
-
93
52
void kvm_nvhe_dump_backtrace (unsigned long hyp_offset );
94
53
95
54
#endif /* __KVM_NVHE_HYPERVISOR__ */
0 commit comments