.. | .. |
---|
33 | 33 | static u64 tag_val; |
---|
34 | 34 | static u64 va_mask; |
---|
35 | 35 | |
---|
36 | | -static void compute_layout(void) |
---|
| 36 | +__init void kvm_compute_layout(void) |
---|
37 | 37 | { |
---|
38 | 38 | phys_addr_t idmap_addr = __pa_symbol(__hyp_idmap_text_start); |
---|
39 | 39 | u64 hyp_va_msb; |
---|
.. | .. |
---|
121 | 121 | |
---|
122 | 122 | BUG_ON(nr_inst != 5); |
---|
123 | 123 | |
---|
124 | | - if (!has_vhe() && !va_mask) |
---|
125 | | - compute_layout(); |
---|
126 | 124 | |
---|
127 | 125 | for (i = 0; i < nr_inst; i++) { |
---|
128 | 126 | u32 rd, rn, insn, oinsn; |
---|
.. | .. |
---|
166 | 164 | WARN_ON_ONCE(cpus_have_const_cap(ARM64_HARDEN_EL2_VECTORS)); |
---|
167 | 165 | return; |
---|
168 | 166 | } |
---|
169 | | - |
---|
170 | | - if (!va_mask) |
---|
171 | | - compute_layout(); |
---|
172 | 167 | |
---|
173 | 168 | /* |
---|
174 | 169 | * Compute HYP VA by using the same computation as kern_hyp_va() |
---|