Key: ELF symbol (primary) ELF symbol source (with column ║) frame instruction +variable (range start) -variable (range end) inlining control-flow forwards branch ──>   backwards branch ══>

Compilation unit 00007008 00007744 arch/arm64/kvm/hyp/nvhe/hyp-main.c instructions

header .debug_abbrev die abbreviation table .debug_info die tree .debug_line line number info .debug_line evaluated line info simple die tree simple die tree globals simple die tree locals inlined subroutine info inlined subroutine info by range **00007008 <handle_trap>: 00007008 <$x>: + handle_trap params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7008 0x709c (DW_OP_fbreg -0x8) handle_trap:217.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7008 0x709c (DW_OP_fbreg -0x8) handle_trap:arch/arm64/kvm/hyp/nvhe/hyp-main.c:216 +esr var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7008 0x709c (DW_OP_fbreg -0x10) handle_trap:arch/arm64/kvm/hyp/nvhe/hyp-main.c:218 ~ 00007008: d10103ff sub sp, sp, #0x40 <- 0000605c(bl)<handle_trap> ~ 0000700c: a9037bfd stp x29, x30, [sp, #48] 00007008 CFA:r31 r29:u r30:u ~ 00007010: 9100c3fd add x29, sp, #0x30 ~ 00007014: f81f83a0 stur x0, [x29, #-8] +reg var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7018 0x702c (DW_OP_breg31 0x18) lexblock:handle_trap:arch/arm64/kvm/hyp/nvhe/hyp-main.c:218 ~ 00007018: d53c5208 mrs x8, esr_el2 handle_trap:218.12 (hyp-main.c) SbePe u64 esr = ║read_sysreg_el2(SYS_ESR); ~ 0000701c: f9000fe8 str x8, [sp, #24] ~ 00007020: f9400fe8 ldr x8, [sp, #24] ~ 00007024: f9000be8 str x8, [sp, #16] ~ 00007028: f9400be8 ldr x8, [sp, #16] -reg var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7018 0x702c (DW_OP_breg31 0x18) lexblock:handle_trap:arch/arm64/kvm/hyp/nvhe/hyp-main.c:218 handle_trap:218.6 (hyp-main.c) sbepe u64 ║esr = read_sysreg_el2(SYS_ESR); ~ 0000702c: f81f03a8 stur x8, [x29, #-16] handle_trap:220.10 (hyp-main.c) Sbepe switch (║ESR_ELx_EC(esr)) { ~ 00007030: f85f03a8 ldur x8, [x29, #-16] ~ 00007034: d35a7d08 ubfx x8, x8, #26, #6 handle_trap:220.2 (hyp-main.c) sbepe ║switch (ESR_ELx_EC(esr)) { ~ 00007038: f1005908 subs x8, x8, #0x16 ~ 0000703c: aa0803e9 mov x9, x8 ~ 00007040: f1003908 subs x8, x8, #0xe ~ 00007044: f90007e9 str x9, [sp, #8] ~ ┌──00007048: 54000228 b.hi 708c <handle_trap+0x84> // b.pmore ~ 0000704c: 90000088 adrp x8, 17000 <___kvm_hyp_init+0x3c> <- 00007048(b.cc-succ)<fallthrough> ~ 00007050: 91395108 add x8, x8, #0xe54 ~ 00007054: f94007eb ldr x11, [sp, #8] ~ 00007058: b8ab790a ldrsw x10, [x8, x11, lsl #2] ~ 0000705c: 8b0a0109 add x9, x8, x10 ~ │ X00007060: d61f0120 br x9 -> 00007060<indirect0> <- 00007060(br)<indirect0> handle_trap:222.21 (hyp-main.c) Sbepe handle_host_hcall(║host_ctxt); ~ 00007064: f85f83a0 ldur x0, [x29, #-8] handle_trap:222.3 (hyp-main.c) sbepe ║handle_host_hcall(host_ctxt); ~ 00007068: 9400000d bl 709c <handle_host_hcall> handle_trap:223.3 (hyp-main.c) Sbepe ║break; ~ ┌──┼──0000706c: 14000009 b 7090 <handle_trap+0x88> <- 00007068(bl-succ)<return> │ │ handle_trap:225.19 (hyp-main.c) Sbepe handle_host_smc(║host_ctxt); ~ │ │ 00007070: f85f83a0 ldur x0, [x29, #-8] │ │ handle_trap:225.3 (hyp-main.c) sbepe ║handle_host_smc(host_ctxt); ~ │ │ 00007074: 94000047 bl 7190 <handle_host_smc> │ │ │ │ handle_trap:226.3 (hyp-main.c) Sbepe ║break; ~ │ ┌┼──00007078: 14000006 b 7090 <handle_trap+0x88> <- 00007074(bl-succ)<return> ~ │ ││┌─0000707c: 14000001 b 7080 <handle_trap+0x78> │ │││ │ │││ handle_trap:230.25 (hyp-main.c) Sbepe handle_host_mem_abort(║host_ctxt); ~ │ ││└>00007080: f85f83a0 ldur x0, [x29, #-8] <- 0000707c(b)<handle_trap+0x78> │ ││ handle_trap:230.3 (hyp-main.c) sbepe ║handle_host_mem_abort(host_ctxt); ~ │ ││ 00007084: 94001128 bl b524 <handle_host_mem_abort> │ ││ │ ││ handle_trap:231.3 (hyp-main.c) Sbepe ║break; ~ │ ││┌─00007088: 14000002 b 7090 <handle_trap+0x88> <- 00007084(bl-succ)<return> │ │││ │ │││ handle_trap:233.3 (hyp-main.c) Sbepe ║hyp_panic(); ~ │ │└┼>0000708c: 97fff18b bl 36b8 <hyp_panic> <- 00007048(b.cc)<handle_trap+0x84> │ │ │ │ │ │ handle_trap:235.1 (hyp-main.c) Sbepe ║} ~ └>└>└>00007090: a9437bfd ldp x29, x30, [sp, #48] <- 0000706c(b)<handle_trap+0x88>,00007078(b)<handle_trap+0x88>,00007088(b)<handle_trap+0x88>,0000708c(bl-succ)<return> ~ 00007094: 910103ff add sp, sp, #0x40 00007014 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007098: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7008 0x709c (DW_OP_fbreg -0x8) handle_trap:arch/arm64/kvm/hyp/nvhe/hyp-main.c:216 -esr var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7008 0x709c (DW_OP_fbreg -0x10) handle_trap:arch/arm64/kvm/hyp/nvhe/hyp-main.c:218 **0000709c <handle_host_hcall>: + handle_host_hcall params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x709c 0x7190 (DW_OP_breg31 0x20) handle_host_hcall:175.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x709c 0x7190 (DW_OP_breg31 0x20) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:174 +id var long unsigned int (base type, DW_ATE_unsigned size:8) 0x709c 0x7190 (DW_OP_breg31 0x18) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:176 +kfn var pointer(const(typedef(hcall_t=pointer(subroutine(prototyped no type(pointer(struct kvm_cpu_context<4ce73>/<4cf91>)))))) 0x709c 0x7190 (DW_OP_breg31 0x10) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:177 +hfn var typedef(hcall_t=pointer(subroutine(prototyped no type(pointer(struct kvm_cpu_context<4ce73>/<4cf91>)))) 0x709c 0x7190 (DW_OP_breg31 0x8) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:178 ~ 0000709c: d10143ff sub sp, sp, #0x50 <- 00007068(bl)<handle_host_hcall> ~ 000070a0: a9047bfd stp x29, x30, [sp, #64] 0000709c CFA:r31 r29:u r30:u ~ 000070a4: 910103fd add x29, sp, #0x40 ~ 000070a8: f90013e0 str x0, [sp, #32] handle_host_hcall:176.2 (hyp-main.c) SbePe ║DECLARE_REG(unsigned long, id, host_ctxt, 0); ~ 000070ac: f94013e8 ldr x8, [sp, #32] ~ 000070b0: f9400108 ldr x8, [x8] ~ 000070b4: f9000fe8 str x8, [sp, #24] handle_host_hcall:180.5 (hyp-main.c) Sbepe id ║-= KVM_HOST_SMCCC_ID(0); ~ 000070b8: f9400fe8 ldr x8, [sp, #24] ~ 000070bc: 929fffe9 mov x9, #0xffffffffffff0000 // #-65536 ~ 000070c0: f2a74009 movk x9, #0x3a00, lsl #16 ~ 000070c4: 8b090108 add x8, x8, x9 ~ 000070c8: f9000fe8 str x8, [sp, #24] handle_host_hcall:182.6 (hyp-main.c) Sbepe if (║unlikely(id >= ARRAY_SIZE(host_hcall))) ~ 000070cc: f9400fe8 ldr x8, [sp, #24] handle_host_hcall:182.6 (hyp-main.c) sbepe if (║unlikely(id >= ARRAY_SIZE(host_hcall))) ~ 000070d0: f1004d08 subs x8, x8, #0x13 ~ ┌──000070d4: 54000063 b.cc 70e0 <handle_host_hcall+0x44> // b.lo, b.ul, b.last ~ │┌─000070d8: 14000001 b 70dc <handle_host_hcall+0x40> <- 000070d4(b.cc-succ)<fallthrough> ││ ││ handle_host_hcall:183.3 (hyp-main.c) Sbepe ║goto inval; ~ ┌───┼└>000070dc: 14000026 b 7174 <handle_host_hcall+0xd8> <- 000070d8(b)<handle_host_hcall+0x40> │ │ │ │ handle_host_hcall:185.19 (hyp-main.c) Sbepe kfn = host_hcall[║id]; ~ │ └─>000070e0: f9400fe8 ldr x8, [sp, #24] <- 000070d4(b.cc)<handle_host_hcall+0x44> handle_host_hcall:185.8 (hyp-main.c) sbepe kfn = ║host_hcall[id]; ~ 000070e4: d0000089 adrp x9, 19000 <kvm_host_data> ~ 000070e8: 913a2129 add x9, x9, #0xe88 ~ 000070ec: f8687928 ldr x8, [x9, x8, lsl #3] handle_host_hcall:185.6 (hyp-main.c) sbepe kfn ║= host_hcall[id]; ~ 000070f0: f9000be8 str x8, [sp, #16] handle_host_hcall:186.6 (hyp-main.c) Sbepe if (║unlikely(!kfn)) ~ 000070f4: f9400be8 ldr x8, [sp, #16] handle_host_hcall:186.6 (hyp-main.c) sbepe if (║unlikely(!kfn)) ~ │ ┌──000070f8: b5000068 cbnz x8, 7104 <handle_host_hcall+0x68> │ │ ~ │ │┌─000070fc: 14000001 b 7100 <handle_host_hcall+0x64> <- 000070f8(b.cc-succ)<fallthrough> │ ││ │ ││ handle_host_hcall:187.3 (hyp-main.c) Sbepe ║goto inval; ~ │ ┌─┼└>00007100: 1400001d b 7174 <handle_host_hcall+0xd8> <- 000070fc(b)<handle_host_hcall+0x64> │ │ │ │ │ │ handle_host_hcall:189.2 (hyp-main.c) Sbepe ║cpu_reg(host_ctxt, 0) = SMCCC_RET_SUCCESS; ~ │ │ └─>00007104: f94013e8 ldr x8, [sp, #32] <- 000070f8(b.cc)<handle_host_hcall+0x68> ~ │ │ 00007108: aa1f03e9 mov x9, xzr │ │ handle_host_hcall:189.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 0) ║= SMCCC_RET_SUCCESS; ~ │ │ 0000710c: f9000109 str x9, [x8] │ │ handle_host_hcall:191.8 (hyp-main.c) Sbepe hfn = ║kimg_fn_hyp_va(kfn); ~ │ │ 00007110: f9400be8 ldr x8, [sp, #16] ~ │ │ 00007114: f81f03a8 stur x8, [x29, #-16] u: 0x7118 0x7160 __kimg_hyp_va inlined from handle_host_hcall:191 (hyp-main.c) <5b58e>: u │ │ __kimg_hyp_va:151.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("movz %0, #0\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7118 0x7160 (DW_OP_fbreg -0x10) __kimg_hyp_va(inlined):handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c +offset var long unsigned int (base type, DW_ATE_unsigned size:8) 0x7118 0x7160 (DW_OP_fbreg -0x18) __kimg_hyp_va(inlined):handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~u │ │ 00007118: d2800008 mov x8, #0x0 // #0 ~u │ │ 0000711c: f2a00008 movk x8, #0x0, lsl #16 ~u │ │ 00007120: f2c00008 movk x8, #0x0, lsl #32 ~u │ │ 00007124: f2e00008 movk x8, #0x0, lsl #48 ~u │ │ 00007128: f81e83a8 stur x8, [x29, #-24] u │ │ __kimg_hyp_va:158.24 (kvm_mmu.h) Sbepe return __kern_hyp_va((║v - offset) | PAGE_OFFSET); ~u │ │ 0000712c: f85f03a8 ldur x8, [x29, #-16] u │ │ __kimg_hyp_va:158.28 (kvm_mmu.h) sbepe return __kern_hyp_va((v - ║offset) | PAGE_OFFSET); ~u │ │ 00007130: f85e83a9 ldur x9, [x29, #-24] u │ │ __kimg_hyp_va:158.26 (kvm_mmu.h) sbepe return __kern_hyp_va((v ║- offset) | PAGE_OFFSET); ~u │ │ 00007134: eb090108 subs x8, x8, x9 u │ │ __kimg_hyp_va:158.36 (kvm_mmu.h) sbepe return __kern_hyp_va((v - offset) ║| PAGE_OFFSET); ~u │ │ 00007138: b2503d08 orr x8, x8, #0xffff000000000000 ~u │ │ 0000713c: f81f83a8 stur x8, [x29, #-8] v: 0x7140 0x7160 __kern_hyp_va inlined from __kimg_hyp_va:158 (kvm_mmu.h) <5b5b2>:<5b58e>: uv │ │ __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7140 0x7160 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):__kimg_hyp_va(inlined):handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~uv │ │ 00007140: f85f83a8 ldur x8, [x29, #-8] ~uv │ │ 00007144: 92400108 and x8, x8, #0x1 ~uv │ │ 00007148: 93c80508 ror x8, x8, #1 ~uv │ │ 0000714c: 91000108 add x8, x8, #0x0 ~uv │ │ 00007150: 91400108 add x8, x8, #0x0, lsl #12 ~uv │ │ 00007154: 93c8fd08 ror x8, x8, #63 ~uv │ │ 00007158: f81f83a8 stur x8, [x29, #-8] uv │ │ __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~uv │ │ 0000715c: f85f83a8 ldur x8, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7118 0x7160 (DW_OP_fbreg -0x10) __kimg_hyp_va(inlined):handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c -offset var long unsigned int (base type, DW_ATE_unsigned size:8) 0x7118 0x7160 (DW_OP_fbreg -0x18) __kimg_hyp_va(inlined):handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7140 0x7160 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):__kimg_hyp_va(inlined):handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c │ │ handle_host_hcall:191.6 (hyp-main.c) Sbepe hfn ║= kimg_fn_hyp_va(kfn); ~ │ │ 00007160: f90007e8 str x8, [sp, #8] │ │ handle_host_hcall:192.2 (hyp-main.c) Sbepe ║hfn(host_ctxt); ~ │ │ 00007164: f94007e8 ldr x8, [sp, #8] │ │ handle_host_hcall:192.6 (hyp-main.c) sbepe hfn(║host_ctxt); ~ │ │ 00007168: f94013e0 ldr x0, [sp, #32] │ │ handle_host_hcall:192.2 (hyp-main.c) sbepe ║hfn(host_ctxt); ~ │ │ 0000716c: d63f0100 blr x8 │ │ handle_host_hcall:194.2 (hyp-main.c) Sbepe ║return; ~ │ │┌───00007170: 14000005 b 7184 <handle_host_hcall+0xe8> │ ││ │ ││ handle_host_hcall:196.2 (hyp-main.c) Sbepe ║cpu_reg(host_ctxt, 0) = SMCCC_RET_NOT_SUPPORTED; ~ └>└┼──>00007174: f94013e8 ldr x8, [sp, #32] <- 000070dc(b)<handle_host_hcall+0xd8>,00007100(b)<handle_host_hcall+0xd8> ~ 00007178: 92800009 mov x9, #0xffffffffffffffff // #-1 handle_host_hcall:196.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 0) ║= SMCCC_RET_NOT_SUPPORTED; ~ 0000717c: f9000109 str x9, [x8] handle_host_hcall:197.1 (hyp-main.c) Sbepe ║} ~ │ ┌─00007180: 14000001 b 7184 <handle_host_hcall+0xe8> │ │ ~ └>└>00007184: a9447bfd ldp x29, x30, [sp, #64] <- 00007170(b)<handle_host_hcall+0xe8>,00007180(b)<handle_host_hcall+0xe8> ~ 00007188: 910143ff add sp, sp, #0x50 000070a8 CFA:r29+16 r29:c-16 r30:c-8 ~ 0000718c: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x709c 0x7190 (DW_OP_breg31 0x20) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:174 -id var long unsigned int (base type, DW_ATE_unsigned size:8) 0x709c 0x7190 (DW_OP_breg31 0x18) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:176 -kfn var pointer(const(typedef(hcall_t=pointer(subroutine(prototyped no type(pointer(struct kvm_cpu_context<4ce73>/<4cf91>)))))) 0x709c 0x7190 (DW_OP_breg31 0x10) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:177 -hfn var typedef(hcall_t=pointer(subroutine(prototyped no type(pointer(struct kvm_cpu_context<4ce73>/<4cf91>)))) 0x709c 0x7190 (DW_OP_breg31 0x8) handle_host_hcall:arch/arm64/kvm/hyp/nvhe/hyp-main.c:178 **00007190 <handle_host_smc>: + handle_host_smc params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7190 0x71d8 (DW_OP_breg31 0x8) handle_host_smc:205.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7190 0x71d8 (DW_OP_breg31 0x8) handle_host_smc:arch/arm64/kvm/hyp/nvhe/hyp-main.c:204 +handled var typedef(bool=_Bool (base type, DW_ATE_boolean size:1)) 0x7190 0x71d8 (DW_OP_breg31 0x4) handle_host_smc:arch/arm64/kvm/hyp/nvhe/hyp-main.c:206 ~ 00007190: d10083ff sub sp, sp, #0x20 <- 00007074(bl)<handle_host_smc> ~ 00007194: a9017bfd stp x29, x30, [sp, #16] 00007190 CFA:r31 r29:u r30:u ~ 00007198: 910043fd add x29, sp, #0x10 ~ 0000719c: f90007e0 str x0, [sp, #8] handle_host_smc:208.34 (hyp-main.c) SbePe handled = kvm_host_psci_handler(║host_ctxt); ~ 000071a0: f94007e0 ldr x0, [sp, #8] handle_host_smc:208.12 (hyp-main.c) sbepe handled = ║kvm_host_psci_handler(host_ctxt); ~ 000071a4: 9400022a bl 7a4c <kvm_host_psci_handler> handle_host_smc:208.10 (hyp-main.c) sbepe handled ║= kvm_host_psci_handler(host_ctxt); ~ 000071a8: 12000008 and w8, w0, #0x1 <- 000071a4(bl-succ)<return> ~ 000071ac: 390013e8 strb w8, [sp, #4] handle_host_smc:209.7 (hyp-main.c) Sbepe if (!║handled) ~ 000071b0: 394013e8 ldrb w8, [sp, #4] handle_host_smc:209.6 (hyp-main.c) sbepe if (║!handled) ~ ┌───000071b4: 370000a8 tbnz w8, #0, 71c8 <handle_host_smc+0x38> ~ │ ┌─000071b8: 14000001 b 71bc <handle_host_smc+0x2c> <- 000071b4(b.cc-succ)<fallthrough> │ │ │ │ handle_host_smc:210.28 (hyp-main.c) Sbepe default_host_smc_handler(║host_ctxt); ~ │ └>000071bc: f94007e0 ldr x0, [sp, #8] <- 000071b8(b)<handle_host_smc+0x2c> handle_host_smc:210.3 (hyp-main.c) sbepe ║default_host_smc_handler(host_ctxt); ~ 000071c0: 94000145 bl 76d4 <default_host_smc_handler> ~ │ ┌─000071c4: 14000001 b 71c8 <handle_host_smc+0x38> <- 000071c0(bl-succ)<return> │ │ │ │ handle_host_smc:213.2 (hyp-main.c) Sbepe ║kvm_skip_host_instr(); ~ └>└>000071c8: 9400014c bl 76f8 <kvm_skip_host_instr> <- 000071b4(b.cc)<handle_host_smc+0x38>,000071c4(b)<handle_host_smc+0x38> handle_host_smc:214.1 (hyp-main.c) Sbepe ║} ~ 000071cc: a9417bfd ldp x29, x30, [sp, #16] <- 000071c8(bl-succ)<return> ~ 000071d0: 910083ff add sp, sp, #0x20 0000719c CFA:r29+16 r29:c-16 r30:c-8 ~ 000071d4: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7190 0x71d8 (DW_OP_breg31 0x8) handle_host_smc:arch/arm64/kvm/hyp/nvhe/hyp-main.c:204 -handled var typedef(bool=_Bool (base type, DW_ATE_boolean size:1)) 0x7190 0x71d8 (DW_OP_breg31 0x4) handle_host_smc:arch/arm64/kvm/hyp/nvhe/hyp-main.c:206 **000071d8 <handle___kvm_vcpu_run>: + handle___kvm_vcpu_run params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x71d8 0x723c (DW_OP_breg31 0x10) handle___kvm_vcpu_run:25.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x71d8 0x723c (DW_OP_breg31 0x10) handle___kvm_vcpu_run:arch/arm64/kvm/hyp/nvhe/hyp-main.c:24 +vcpu var pointer(struct kvm_vcpu<4ce73>/<4d0d9>) 0x71d8 0x723c (DW_OP_breg31 0x8) handle___kvm_vcpu_run:arch/arm64/kvm/hyp/nvhe/hyp-main.c:26 ~ 000071d8: d100c3ff sub sp, sp, #0x30 ~ 000071dc: a9027bfd stp x29, x30, [sp, #32] 000071d8 CFA:r31 r29:u r30:u ~ 000071e0: 910083fd add x29, sp, #0x20 ~ 000071e4: f9000be0 str x0, [sp, #16] handle___kvm_vcpu_run:26.2 (hyp-main.c) SbePe ║DECLARE_REG(struct kvm_vcpu *, vcpu, host_ctxt, 1); ~ 000071e8: f9400be8 ldr x8, [sp, #16] ~ 000071ec: f9400508 ldr x8, [x8, #8] ~ 000071f0: f90007e8 str x8, [sp, #8] handle___kvm_vcpu_run:28.42 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = __kvm_vcpu_run(║kern_hyp_va(vcpu)); ~ 000071f4: f94007e8 ldr x8, [sp, #8] ~ 000071f8: f81f83a8 stur x8, [x29, #-8] w: 0x71fc 0x721c __kern_hyp_va inlined from handle___kvm_vcpu_run:28 (hyp-main.c) <5b634>: w __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x71fc 0x721c (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_vcpu_run:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~w 000071fc: f85f83a8 ldur x8, [x29, #-8] ~w 00007200: 92400108 and x8, x8, #0x1 ~w 00007204: 93c80508 ror x8, x8, #1 ~w 00007208: 91000108 add x8, x8, #0x0 ~w 0000720c: 91400108 add x8, x8, #0x0, lsl #12 ~w 00007210: 93c8fd08 ror x8, x8, #63 ~w 00007214: f81f83a8 stur x8, [x29, #-8] w __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~w 00007218: f85f83a0 ldur x0, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x71fc 0x721c (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_vcpu_run:arch/arm64/kvm/hyp/nvhe/hyp-main.c handle___kvm_vcpu_run:28.27 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = ║__kvm_vcpu_run(kern_hyp_va(vcpu)); ~ 0000721c: 97ffec17 bl 2278 <__kvm_vcpu_run> ~ 00007220: 2a0003e1 mov w1, w0 <- 0000721c(bl-succ)<return> ~ 00007224: 93407c28 sxtw x8, w1 handle___kvm_vcpu_run:28.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __kvm_vcpu_run(kern_hyp_va(vcpu)); ~ 00007228: f9400be9 ldr x9, [sp, #16] handle___kvm_vcpu_run:28.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __kvm_vcpu_run(kern_hyp_va(vcpu)); ~ 0000722c: f9000528 str x8, [x9, #8] handle___kvm_vcpu_run:29.1 (hyp-main.c) Sbepe ║} ~ 00007230: a9427bfd ldp x29, x30, [sp, #32] ~ 00007234: 9100c3ff add sp, sp, #0x30 000071e4 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007238: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x71d8 0x723c (DW_OP_breg31 0x10) handle___kvm_vcpu_run:arch/arm64/kvm/hyp/nvhe/hyp-main.c:24 -vcpu var pointer(struct kvm_vcpu<4ce73>/<4d0d9>) 0x71d8 0x723c (DW_OP_breg31 0x8) handle___kvm_vcpu_run:arch/arm64/kvm/hyp/nvhe/hyp-main.c:26 **0000723c <handle___kvm_flush_vm_context>: + handle___kvm_flush_vm_context params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x723c 0x725c (DW_OP_breg31 0x8) handle___kvm_flush_vm_context:32.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x723c 0x725c (DW_OP_breg31 0x8) handle___kvm_flush_vm_context:arch/arm64/kvm/hyp/nvhe/hyp-main.c:31 ~ 0000723c: d10083ff sub sp, sp, #0x20 ~ 00007240: a9017bfd stp x29, x30, [sp, #16] 0000723c CFA:r31 r29:u r30:u ~ 00007244: 910043fd add x29, sp, #0x10 ~ 00007248: f90007e0 str x0, [sp, #8] handle___kvm_flush_vm_context:33.2 (hyp-main.c) SbePe ║__kvm_flush_vm_context(); ~ 0000724c: 97fff938 bl 572c <__kvm_flush_vm_context> handle___kvm_flush_vm_context:34.1 (hyp-main.c) Sbepe ║} ~ 00007250: a9417bfd ldp x29, x30, [sp, #16] <- 0000724c(bl-succ)<return> ~ 00007254: 910083ff add sp, sp, #0x20 00007248 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007258: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x723c 0x725c (DW_OP_breg31 0x8) handle___kvm_flush_vm_context:arch/arm64/kvm/hyp/nvhe/hyp-main.c:31 **0000725c <handle___kvm_tlb_flush_vmid_ipa>: + handle___kvm_tlb_flush_vmid_ipa params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x725c 0x72d0 (DW_OP_fbreg -0x10) handle___kvm_tlb_flush_vmid_ipa:37.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x725c 0x72d0 (DW_OP_fbreg -0x10) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:36 +mmu var pointer(struct kvm_s2_mmu<4ce73>/<5987b>) 0x725c 0x72d0 (DW_OP_breg31 0x18) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:38 +ipa var typedef(phys_addr_t=typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x725c 0x72d0 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:39 +level var int (base type, DW_ATE_signed size:4) 0x725c 0x72d0 (DW_OP_breg31 0xc) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:40 ~ 0000725c: d10103ff sub sp, sp, #0x40 ~ 00007260: a9037bfd stp x29, x30, [sp, #48] 0000725c CFA:r31 r29:u r30:u ~ 00007264: 9100c3fd add x29, sp, #0x30 ~ 00007268: f81f03a0 stur x0, [x29, #-16] handle___kvm_tlb_flush_vmid_ipa:38.2 (hyp-main.c) SbePe ║DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); ~ 0000726c: f85f03a8 ldur x8, [x29, #-16] ~ 00007270: f9400508 ldr x8, [x8, #8] ~ 00007274: f9000fe8 str x8, [sp, #24] handle___kvm_tlb_flush_vmid_ipa:39.2 (hyp-main.c) Sbepe ║DECLARE_REG(phys_addr_t, ipa, host_ctxt, 2); ~ 00007278: f85f03a8 ldur x8, [x29, #-16] ~ 0000727c: f9400908 ldr x8, [x8, #16] ~ 00007280: f9000be8 str x8, [sp, #16] handle___kvm_tlb_flush_vmid_ipa:40.2 (hyp-main.c) Sbepe ║DECLARE_REG(int, level, host_ctxt, 3); ~ 00007284: f85f03a8 ldur x8, [x29, #-16] ~ 00007288: f9400d08 ldr x8, [x8, #24] ~ 0000728c: b9000fe8 str w8, [sp, #12] handle___kvm_tlb_flush_vmid_ipa:42.27 (hyp-main.c) Sbepe __kvm_tlb_flush_vmid_ipa(║kern_hyp_va(mmu), ipa, level); ~ 00007290: f9400fe9 ldr x9, [sp, #24] ~ 00007294: f81f83a9 stur x9, [x29, #-8] x: 0x7298 0x72b8 __kern_hyp_va inlined from handle___kvm_tlb_flush_vmid_ipa:42 (hyp-main.c) <5b6c3>: x __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7298 0x72b8 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~x 00007298: f85f83a9 ldur x9, [x29, #-8] ~x 0000729c: 92400129 and x9, x9, #0x1 ~x 000072a0: 93c90529 ror x9, x9, #1 ~x 000072a4: 91000129 add x9, x9, #0x0 ~x 000072a8: 91400129 add x9, x9, #0x0, lsl #12 ~x 000072ac: 93c9fd29 ror x9, x9, #63 ~x 000072b0: f81f83a9 stur x9, [x29, #-8] x __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~x 000072b4: f85f83a0 ldur x0, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7298 0x72b8 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c handle___kvm_tlb_flush_vmid_ipa:42.45 (hyp-main.c) Sbepe __kvm_tlb_flush_vmid_ipa(kern_hyp_va(mmu), ║ipa, level); ~ 000072b8: f9400be1 ldr x1, [sp, #16] handle___kvm_tlb_flush_vmid_ipa:42.50 (hyp-main.c) sbepe __kvm_tlb_flush_vmid_ipa(kern_hyp_va(mmu), ipa, ║level); ~ 000072bc: b9400fe2 ldr w2, [sp, #12] handle___kvm_tlb_flush_vmid_ipa:42.2 (hyp-main.c) sbepe ║__kvm_tlb_flush_vmid_ipa(kern_hyp_va(mmu), ipa, level); ~ 000072c0: 97fff6fd bl 4eb4 <__kvm_tlb_flush_vmid_ipa> handle___kvm_tlb_flush_vmid_ipa:43.1 (hyp-main.c) Sbepe ║} ~ 000072c4: a9437bfd ldp x29, x30, [sp, #48] <- 000072c0(bl-succ)<return> ~ 000072c8: 910103ff add sp, sp, #0x40 00007268 CFA:r29+16 r29:c-16 r30:c-8 ~ 000072cc: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x725c 0x72d0 (DW_OP_fbreg -0x10) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:36 -mmu var pointer(struct kvm_s2_mmu<4ce73>/<5987b>) 0x725c 0x72d0 (DW_OP_breg31 0x18) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:38 -ipa var typedef(phys_addr_t=typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x725c 0x72d0 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:39 -level var int (base type, DW_ATE_signed size:4) 0x725c 0x72d0 (DW_OP_breg31 0xc) handle___kvm_tlb_flush_vmid_ipa:arch/arm64/kvm/hyp/nvhe/hyp-main.c:40 **000072d0 <handle___kvm_tlb_flush_vmid>: + handle___kvm_tlb_flush_vmid params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x72d0 0x7324 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_vmid:46.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x72d0 0x7324 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:45 +mmu var pointer(struct kvm_s2_mmu<4ce73>/<5987b>) 0x72d0 0x7324 (DW_OP_breg31 0x8) handle___kvm_tlb_flush_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:47 ~ 000072d0: d100c3ff sub sp, sp, #0x30 ~ 000072d4: a9027bfd stp x29, x30, [sp, #32] 000072d0 CFA:r31 r29:u r30:u ~ 000072d8: 910083fd add x29, sp, #0x20 ~ 000072dc: f9000be0 str x0, [sp, #16] handle___kvm_tlb_flush_vmid:47.2 (hyp-main.c) SbePe ║DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); ~ 000072e0: f9400be8 ldr x8, [sp, #16] ~ 000072e4: f9400508 ldr x8, [x8, #8] ~ 000072e8: f90007e8 str x8, [sp, #8] handle___kvm_tlb_flush_vmid:49.23 (hyp-main.c) Sbepe __kvm_tlb_flush_vmid(║kern_hyp_va(mmu)); ~ 000072ec: f94007e8 ldr x8, [sp, #8] ~ 000072f0: f81f83a8 stur x8, [x29, #-8] y: 0x72f4 0x7314 __kern_hyp_va inlined from handle___kvm_tlb_flush_vmid:49 (hyp-main.c) <5b712>: y __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x72f4 0x7314 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_tlb_flush_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~y 000072f4: f85f83a8 ldur x8, [x29, #-8] ~y 000072f8: 92400108 and x8, x8, #0x1 ~y 000072fc: 93c80508 ror x8, x8, #1 ~y 00007300: 91000108 add x8, x8, #0x0 ~y 00007304: 91400108 add x8, x8, #0x0, lsl #12 ~y 00007308: 93c8fd08 ror x8, x8, #63 ~y 0000730c: f81f83a8 stur x8, [x29, #-8] y __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~y 00007310: f85f83a0 ldur x0, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x72f4 0x7314 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_tlb_flush_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c handle___kvm_tlb_flush_vmid:49.2 (hyp-main.c) Sbepe ║__kvm_tlb_flush_vmid(kern_hyp_va(mmu)); ~ 00007314: 97fff8df bl 5690 <__kvm_tlb_flush_vmid> handle___kvm_tlb_flush_vmid:50.1 (hyp-main.c) Sbepe ║} ~ 00007318: a9427bfd ldp x29, x30, [sp, #32] <- 00007314(bl-succ)<return> ~ 0000731c: 9100c3ff add sp, sp, #0x30 000072dc CFA:r29+16 r29:c-16 r30:c-8 ~ 00007320: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x72d0 0x7324 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:45 -mmu var pointer(struct kvm_s2_mmu<4ce73>/<5987b>) 0x72d0 0x7324 (DW_OP_breg31 0x8) handle___kvm_tlb_flush_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:47 **00007324 <handle___kvm_tlb_flush_local_vmid>: + handle___kvm_tlb_flush_local_vmid params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7324 0x7378 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_local_vmid:53.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7324 0x7378 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_local_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:52 +mmu var pointer(struct kvm_s2_mmu<4ce73>/<5987b>) 0x7324 0x7378 (DW_OP_breg31 0x8) handle___kvm_tlb_flush_local_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:54 ~ 00007324: d100c3ff sub sp, sp, #0x30 ~ 00007328: a9027bfd stp x29, x30, [sp, #32] 00007324 CFA:r31 r29:u r30:u ~ 0000732c: 910083fd add x29, sp, #0x20 ~ 00007330: f9000be0 str x0, [sp, #16] handle___kvm_tlb_flush_local_vmid:54.2 (hyp-main.c) SbePe ║DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); ~ 00007334: f9400be8 ldr x8, [sp, #16] ~ 00007338: f9400508 ldr x8, [x8, #8] ~ 0000733c: f90007e8 str x8, [sp, #8] handle___kvm_tlb_flush_local_vmid:56.29 (hyp-main.c) Sbepe __kvm_tlb_flush_local_vmid(║kern_hyp_va(mmu)); ~ 00007340: f94007e8 ldr x8, [sp, #8] ~ 00007344: f81f83a8 stur x8, [x29, #-8] z: 0x7348 0x7368 __kern_hyp_va inlined from handle___kvm_tlb_flush_local_vmid:56 (hyp-main.c) <5b761>: z __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7348 0x7368 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_tlb_flush_local_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~z 00007348: f85f83a8 ldur x8, [x29, #-8] ~z 0000734c: 92400108 and x8, x8, #0x1 ~z 00007350: 93c80508 ror x8, x8, #1 ~z 00007354: 91000108 add x8, x8, #0x0 ~z 00007358: 91400108 add x8, x8, #0x0, lsl #12 ~z 0000735c: 93c8fd08 ror x8, x8, #63 ~z 00007360: f81f83a8 stur x8, [x29, #-8] z __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~z 00007364: f85f83a0 ldur x0, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x7348 0x7368 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___kvm_tlb_flush_local_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c handle___kvm_tlb_flush_local_vmid:56.2 (hyp-main.c) Sbepe ║__kvm_tlb_flush_local_vmid(kern_hyp_va(mmu)); ~ 00007368: 97fff8de bl 56e0 <__kvm_tlb_flush_local_vmid> handle___kvm_tlb_flush_local_vmid:57.1 (hyp-main.c) Sbepe ║} ~ 0000736c: a9427bfd ldp x29, x30, [sp, #32] <- 00007368(bl-succ)<return> ~ 00007370: 9100c3ff add sp, sp, #0x30 00007330 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007374: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7324 0x7378 (DW_OP_breg31 0x10) handle___kvm_tlb_flush_local_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:52 -mmu var pointer(struct kvm_s2_mmu<4ce73>/<5987b>) 0x7324 0x7378 (DW_OP_breg31 0x8) handle___kvm_tlb_flush_local_vmid:arch/arm64/kvm/hyp/nvhe/hyp-main.c:54 **00007378 <handle___kvm_timer_set_cntvoff>: + handle___kvm_timer_set_cntvoff params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7378 0x73a0 (DW_OP_breg31 0x8) handle___kvm_timer_set_cntvoff:60.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7378 0x73a0 (DW_OP_breg31 0x8) handle___kvm_timer_set_cntvoff:arch/arm64/kvm/hyp/nvhe/hyp-main.c:59 ~ 00007378: d10083ff sub sp, sp, #0x20 ~ 0000737c: a9017bfd stp x29, x30, [sp, #16] 00007378 CFA:r31 r29:u r30:u ~ 00007380: 910043fd add x29, sp, #0x10 ~ 00007384: f90007e0 str x0, [sp, #8] handle___kvm_timer_set_cntvoff:61.26 (hyp-main.c) SbePe __kvm_timer_set_cntvoff(║cpu_reg(host_ctxt, 1)); ~ 00007388: f94007e8 ldr x8, [sp, #8] ~ 0000738c: f9400500 ldr x0, [x8, #8] handle___kvm_timer_set_cntvoff:61.2 (hyp-main.c) sbepe ║__kvm_timer_set_cntvoff(cpu_reg(host_ctxt, 1)); ~ 00007390: 97ffe31c bl 0 <__kvm_timer_set_cntvoff> handle___kvm_timer_set_cntvoff:62.1 (hyp-main.c) Sbepe ║} ~ 00007394: a9417bfd ldp x29, x30, [sp, #16] <- 00007390(bl-succ)<return> ~ 00007398: 910083ff add sp, sp, #0x20 00007384 CFA:r29+16 r29:c-16 r30:c-8 ~ 0000739c: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7378 0x73a0 (DW_OP_breg31 0x8) handle___kvm_timer_set_cntvoff:arch/arm64/kvm/hyp/nvhe/hyp-main.c:59 **000073a0 <handle___kvm_enable_ssbs>: + handle___kvm_enable_ssbs params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x73a0 0x73ec (DW_OP_fbreg 0x28) handle___kvm_enable_ssbs:65.0 (hyp-main.c) Sbepe ║{ 000073a0 CFA:r31 +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x73a0 0x73ec (DW_OP_fbreg 0x28) handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:64 +tmp var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x73a0 0x73ec (DW_OP_fbreg 0x20) handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:66 ~ 000073a0: d100c3ff sub sp, sp, #0x30 ~ 000073a4: f90017e0 str x0, [sp, #40] +reg var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x73a8 0x73bc (DW_OP_fbreg 0x18) lexblock:handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:68 ~ 000073a8: d53c1008 mrs x8, sctlr_el2 handle___kvm_enable_ssbs:68.8 (hyp-main.c) SbePe tmp = ║read_sysreg_el2(SYS_SCTLR); ~ 000073ac: f9000fe8 str x8, [sp, #24] ~ 000073b0: f9400fe8 ldr x8, [sp, #24] ~ 000073b4: f9000be8 str x8, [sp, #16] ~ 000073b8: f9400be8 ldr x8, [sp, #16] -reg var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x73a8 0x73bc (DW_OP_fbreg 0x18) lexblock:handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:68 handle___kvm_enable_ssbs:68.6 (hyp-main.c) sbepe tmp ║= read_sysreg_el2(SYS_SCTLR); ~ 000073bc: f90013e8 str x8, [sp, #32] handle___kvm_enable_ssbs:69.6 (hyp-main.c) Sbepe tmp ║|= SCTLR_ELx_DSSBS; ~ 000073c0: f94013e8 ldr x8, [sp, #32] ~ 000073c4: b2540108 orr x8, x8, #0x100000000000 ~ 000073c8: f90013e8 str x8, [sp, #32] handle___kvm_enable_ssbs:70.2 (hyp-main.c) Sbepe ║write_sysreg_el2(tmp, SYS_SCTLR); ~ ┌─000073cc: 14000001 b 73d0 <handle___kvm_enable_ssbs+0x30> handle___kvm_enable_ssbs:70.2 (hyp-main.c) sbepe ║write_sysreg_el2(tmp, SYS_SCTLR); +__val var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x73d0 0x73e4 (DW_OP_fbreg 0x8) lexblock:handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:70 ~ └>000073d0: f94013e8 ldr x8, [sp, #32] <- 000073cc(b)<handle___kvm_enable_ssbs+0x30> ~ 000073d4: f90007e8 str x8, [sp, #8] ~ 000073d8: f94007e8 ldr x8, [sp, #8] ~ 000073dc: d51c1008 msr sctlr_el2, x8 ~ ┌─000073e0: 14000001 b 73e4 <handle___kvm_enable_ssbs+0x44> -__val var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x73d0 0x73e4 (DW_OP_fbreg 0x8) lexblock:handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:70 handle___kvm_enable_ssbs:71.1 (hyp-main.c) Sbepe ║} ~ └>000073e4: 9100c3ff add sp, sp, #0x30 <- 000073e0(b)<handle___kvm_enable_ssbs+0x44> 000073a4 CFA:r31+48 ~ 000073e8: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x73a0 0x73ec (DW_OP_fbreg 0x28) handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:64 -tmp var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x73a0 0x73ec (DW_OP_fbreg 0x20) handle___kvm_enable_ssbs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:66 **000073ec <handle___vgic_v3_get_ich_vtr_el2>: + handle___vgic_v3_get_ich_vtr_el2 params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x73ec 0x7414 (DW_OP_breg31 0x8) handle___vgic_v3_get_ich_vtr_el2:74.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x73ec 0x7414 (DW_OP_breg31 0x8) handle___vgic_v3_get_ich_vtr_el2:arch/arm64/kvm/hyp/nvhe/hyp-main.c:73 ~ 000073ec: d10083ff sub sp, sp, #0x20 ~ 000073f0: a9017bfd stp x29, x30, [sp, #16] 000073ec CFA:r31 r29:u r30:u ~ 000073f4: 910043fd add x29, sp, #0x10 ~ 000073f8: f90007e0 str x0, [sp, #8] handle___vgic_v3_get_ich_vtr_el2:75.26 (hyp-main.c) SbePe cpu_reg(host_ctxt, 1) = ║__vgic_v3_get_ich_vtr_el2(); ~ 000073fc: 9400172a bl d0a4 <__vgic_v3_get_ich_vtr_el2> handle___vgic_v3_get_ich_vtr_el2:75.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __vgic_v3_get_ich_vtr_el2(); ~ 00007400: f94007e8 ldr x8, [sp, #8] <- 000073fc(bl-succ)<return> handle___vgic_v3_get_ich_vtr_el2:75.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __vgic_v3_get_ich_vtr_el2(); ~ 00007404: f9000500 str x0, [x8, #8] handle___vgic_v3_get_ich_vtr_el2:76.1 (hyp-main.c) Sbepe ║} ~ 00007408: a9417bfd ldp x29, x30, [sp, #16] ~ 0000740c: 910083ff add sp, sp, #0x20 000073f8 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007410: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x73ec 0x7414 (DW_OP_breg31 0x8) handle___vgic_v3_get_ich_vtr_el2:arch/arm64/kvm/hyp/nvhe/hyp-main.c:73 **00007414 <handle___vgic_v3_read_vmcr>: + handle___vgic_v3_read_vmcr params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7414 0x743c (DW_OP_breg31 0x8) handle___vgic_v3_read_vmcr:79.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7414 0x743c (DW_OP_breg31 0x8) handle___vgic_v3_read_vmcr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:78 ~ 00007414: d10083ff sub sp, sp, #0x20 ~ 00007418: a9017bfd stp x29, x30, [sp, #16] 00007414 CFA:r31 r29:u r30:u ~ 0000741c: 910043fd add x29, sp, #0x10 ~ 00007420: f90007e0 str x0, [sp, #8] handle___vgic_v3_read_vmcr:80.26 (hyp-main.c) SbePe cpu_reg(host_ctxt, 1) = ║__vgic_v3_read_vmcr(); ~ 00007424: 94001728 bl d0c4 <__vgic_v3_read_vmcr> handle___vgic_v3_read_vmcr:80.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __vgic_v3_read_vmcr(); ~ 00007428: f94007e8 ldr x8, [sp, #8] <- 00007424(bl-succ)<return> handle___vgic_v3_read_vmcr:80.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __vgic_v3_read_vmcr(); ~ 0000742c: f9000500 str x0, [x8, #8] handle___vgic_v3_read_vmcr:81.1 (hyp-main.c) Sbepe ║} ~ 00007430: a9417bfd ldp x29, x30, [sp, #16] ~ 00007434: 910083ff add sp, sp, #0x20 00007420 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007438: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7414 0x743c (DW_OP_breg31 0x8) handle___vgic_v3_read_vmcr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:78 **0000743c <handle___vgic_v3_write_vmcr>: + handle___vgic_v3_write_vmcr params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x743c 0x7464 (DW_OP_breg31 0x8) handle___vgic_v3_write_vmcr:84.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x743c 0x7464 (DW_OP_breg31 0x8) handle___vgic_v3_write_vmcr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:83 ~ 0000743c: d10083ff sub sp, sp, #0x20 ~ 00007440: a9017bfd stp x29, x30, [sp, #16] 0000743c CFA:r31 r29:u r30:u ~ 00007444: 910043fd add x29, sp, #0x10 ~ 00007448: f90007e0 str x0, [sp, #8] handle___vgic_v3_write_vmcr:85.23 (hyp-main.c) SbePe __vgic_v3_write_vmcr(║cpu_reg(host_ctxt, 1)); ~ 0000744c: f94007e8 ldr x8, [sp, #8] ~ 00007450: b9400900 ldr w0, [x8, #8] handle___vgic_v3_write_vmcr:85.2 (hyp-main.c) sbepe ║__vgic_v3_write_vmcr(cpu_reg(host_ctxt, 1)); ~ 00007454: 94001724 bl d0e4 <__vgic_v3_write_vmcr> handle___vgic_v3_write_vmcr:86.1 (hyp-main.c) Sbepe ║} ~ 00007458: a9417bfd ldp x29, x30, [sp, #16] <- 00007454(bl-succ)<return> ~ 0000745c: 910083ff add sp, sp, #0x20 00007448 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007460: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x743c 0x7464 (DW_OP_breg31 0x8) handle___vgic_v3_write_vmcr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:83 **00007464 <handle___vgic_v3_init_lrs>: + handle___vgic_v3_init_lrs params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7464 0x7484 (DW_OP_breg31 0x8) handle___vgic_v3_init_lrs:89.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7464 0x7484 (DW_OP_breg31 0x8) handle___vgic_v3_init_lrs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:88 ~ 00007464: d10083ff sub sp, sp, #0x20 ~ 00007468: a9017bfd stp x29, x30, [sp, #16] 00007464 CFA:r31 r29:u r30:u ~ 0000746c: 910043fd add x29, sp, #0x10 ~ 00007470: f90007e0 str x0, [sp, #8] handle___vgic_v3_init_lrs:90.2 (hyp-main.c) SbePe ║__vgic_v3_init_lrs(); ~ 00007474: 940016ee bl d02c <__vgic_v3_init_lrs> handle___vgic_v3_init_lrs:91.1 (hyp-main.c) Sbepe ║} ~ 00007478: a9417bfd ldp x29, x30, [sp, #16] <- 00007474(bl-succ)<return> ~ 0000747c: 910083ff add sp, sp, #0x20 00007470 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007480: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7464 0x7484 (DW_OP_breg31 0x8) handle___vgic_v3_init_lrs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:88 **00007484 <handle___kvm_get_mdcr_el2>: + handle___kvm_get_mdcr_el2 params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7484 0x74b4 (DW_OP_breg31 0x8) handle___kvm_get_mdcr_el2:94.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7484 0x74b4 (DW_OP_breg31 0x8) handle___kvm_get_mdcr_el2:arch/arm64/kvm/hyp/nvhe/hyp-main.c:93 ~ 00007484: d10083ff sub sp, sp, #0x20 ~ 00007488: a9017bfd stp x29, x30, [sp, #16] 00007484 CFA:r31 r29:u r30:u ~ 0000748c: 910043fd add x29, sp, #0x10 ~ 00007490: f90007e0 str x0, [sp, #8] handle___kvm_get_mdcr_el2:95.26 (hyp-main.c) SbePe cpu_reg(host_ctxt, 1) = ║__kvm_get_mdcr_el2(); ~ 00007494: 97ffe6d1 bl fd8 <__kvm_get_mdcr_el2> ~ 00007498: 2a0003e8 mov w8, w0 <- 00007494(bl-succ)<return> ~ 0000749c: 2a0803e9 mov w9, w8 handle___kvm_get_mdcr_el2:95.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __kvm_get_mdcr_el2(); ~ 000074a0: f94007ea ldr x10, [sp, #8] handle___kvm_get_mdcr_el2:95.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __kvm_get_mdcr_el2(); ~ 000074a4: f9000549 str x9, [x10, #8] handle___kvm_get_mdcr_el2:96.1 (hyp-main.c) Sbepe ║} ~ 000074a8: a9417bfd ldp x29, x30, [sp, #16] ~ 000074ac: 910083ff add sp, sp, #0x20 00007490 CFA:r29+16 r29:c-16 r30:c-8 ~ 000074b0: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7484 0x74b4 (DW_OP_breg31 0x8) handle___kvm_get_mdcr_el2:arch/arm64/kvm/hyp/nvhe/hyp-main.c:93 **000074b4 <handle___vgic_v3_save_aprs>: + handle___vgic_v3_save_aprs params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x74b4 0x7508 (DW_OP_breg31 0x10) handle___vgic_v3_save_aprs:99.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x74b4 0x7508 (DW_OP_breg31 0x10) handle___vgic_v3_save_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:98 +cpu_if var pointer(struct vgic_v3_cpu_if<4ce73>/<5b149>) 0x74b4 0x7508 (DW_OP_breg31 0x8) handle___vgic_v3_save_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:100 ~ 000074b4: d100c3ff sub sp, sp, #0x30 ~ 000074b8: a9027bfd stp x29, x30, [sp, #32] 000074b4 CFA:r31 r29:u r30:u ~ 000074bc: 910083fd add x29, sp, #0x20 ~ 000074c0: f9000be0 str x0, [sp, #16] handle___vgic_v3_save_aprs:100.2 (hyp-main.c) SbePe ║DECLARE_REG(struct vgic_v3_cpu_if *, cpu_if, host_ctxt, 1); ~ 000074c4: f9400be8 ldr x8, [sp, #16] ~ 000074c8: f9400508 ldr x8, [x8, #8] ~ 000074cc: f90007e8 str x8, [sp, #8] handle___vgic_v3_save_aprs:102.22 (hyp-main.c) Sbepe __vgic_v3_save_aprs(║kern_hyp_va(cpu_if)); ~ 000074d0: f94007e8 ldr x8, [sp, #8] ~ 000074d4: f81f83a8 stur x8, [x29, #-8] a: 0x74d8 0x74f8 __kern_hyp_va inlined from handle___vgic_v3_save_aprs:102 (hyp-main.c) <5b8f2>: a __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x74d8 0x74f8 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___vgic_v3_save_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~a 000074d8: f85f83a8 ldur x8, [x29, #-8] ~a 000074dc: 92400108 and x8, x8, #0x1 ~a 000074e0: 93c80508 ror x8, x8, #1 ~a 000074e4: 91000108 add x8, x8, #0x0 ~a 000074e8: 91400108 add x8, x8, #0x0, lsl #12 ~a 000074ec: 93c8fd08 ror x8, x8, #63 ~a 000074f0: f81f83a8 stur x8, [x29, #-8] a __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~a 000074f4: f85f83a0 ldur x0, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x74d8 0x74f8 (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___vgic_v3_save_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c handle___vgic_v3_save_aprs:102.2 (hyp-main.c) Sbepe ║__vgic_v3_save_aprs(kern_hyp_va(cpu_if)); ~ 000074f8: 94001579 bl cadc <__vgic_v3_save_aprs> handle___vgic_v3_save_aprs:103.1 (hyp-main.c) Sbepe ║} ~ 000074fc: a9427bfd ldp x29, x30, [sp, #32] <- 000074f8(bl-succ)<return> ~ 00007500: 9100c3ff add sp, sp, #0x30 000074c0 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007504: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x74b4 0x7508 (DW_OP_breg31 0x10) handle___vgic_v3_save_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:98 -cpu_if var pointer(struct vgic_v3_cpu_if<4ce73>/<5b149>) 0x74b4 0x7508 (DW_OP_breg31 0x8) handle___vgic_v3_save_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:100 **00007508 <handle___vgic_v3_restore_aprs>: + handle___vgic_v3_restore_aprs params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7508 0x755c (DW_OP_breg31 0x10) handle___vgic_v3_restore_aprs:106.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7508 0x755c (DW_OP_breg31 0x10) handle___vgic_v3_restore_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:105 +cpu_if var pointer(struct vgic_v3_cpu_if<4ce73>/<5b149>) 0x7508 0x755c (DW_OP_breg31 0x8) handle___vgic_v3_restore_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:107 ~ 00007508: d100c3ff sub sp, sp, #0x30 ~ 0000750c: a9027bfd stp x29, x30, [sp, #32] 00007508 CFA:r31 r29:u r30:u ~ 00007510: 910083fd add x29, sp, #0x20 ~ 00007514: f9000be0 str x0, [sp, #16] handle___vgic_v3_restore_aprs:107.2 (hyp-main.c) SbePe ║DECLARE_REG(struct vgic_v3_cpu_if *, cpu_if, host_ctxt, 1); ~ 00007518: f9400be8 ldr x8, [sp, #16] ~ 0000751c: f9400508 ldr x8, [x8, #8] ~ 00007520: f90007e8 str x8, [sp, #8] handle___vgic_v3_restore_aprs:109.25 (hyp-main.c) Sbepe __vgic_v3_restore_aprs(║kern_hyp_va(cpu_if)); ~ 00007524: f94007e8 ldr x8, [sp, #8] ~ 00007528: f81f83a8 stur x8, [x29, #-8] b: 0x752c 0x754c __kern_hyp_va inlined from handle___vgic_v3_restore_aprs:109 (hyp-main.c) <5b941>: b __kern_hyp_va:135.2 (kvm_mmu.h) Sbepe ║asm volatile(ALTERNATIVE_CB("and %0, %0, #1\n" +v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x752c 0x754c (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___vgic_v3_restore_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c ~b 0000752c: f85f83a8 ldur x8, [x29, #-8] ~b 00007530: 92400108 and x8, x8, #0x1 ~b 00007534: 93c80508 ror x8, x8, #1 ~b 00007538: 91000108 add x8, x8, #0x0 ~b 0000753c: 91400108 add x8, x8, #0x0, lsl #12 ~b 00007540: 93c8fd08 ror x8, x8, #63 ~b 00007544: f81f83a8 stur x8, [x29, #-8] b __kern_hyp_va:142.9 (kvm_mmu.h) Sbepe return v; ~b 00007548: f85f83a0 ldur x0, [x29, #-8] -v param long unsigned int (base type, DW_ATE_unsigned size:8) 0x752c 0x754c (DW_OP_fbreg -0x8) __kern_hyp_va(inlined):handle___vgic_v3_restore_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c handle___vgic_v3_restore_aprs:109.2 (hyp-main.c) Sbepe ║__vgic_v3_restore_aprs(kern_hyp_va(cpu_if)); ~ 0000754c: 9400160b bl cd78 <__vgic_v3_restore_aprs> handle___vgic_v3_restore_aprs:110.1 (hyp-main.c) Sbepe ║} ~ 00007550: a9427bfd ldp x29, x30, [sp, #32] <- 0000754c(bl-succ)<return> ~ 00007554: 9100c3ff add sp, sp, #0x30 00007514 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007558: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7508 0x755c (DW_OP_breg31 0x10) handle___vgic_v3_restore_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:105 -cpu_if var pointer(struct vgic_v3_cpu_if<4ce73>/<5b149>) 0x7508 0x755c (DW_OP_breg31 0x8) handle___vgic_v3_restore_aprs:arch/arm64/kvm/hyp/nvhe/hyp-main.c:107 **0000755c <handle___kvm_hyp_protect>: + handle___kvm_hyp_protect params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x755c 0x75cc (DW_OP_fbreg -0x8) handle___kvm_hyp_protect:113.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x755c 0x75cc (DW_OP_fbreg -0x8) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:112 +phys var typedef(phys_addr_t=typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x755c 0x75cc (DW_OP_fbreg -0x10) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:114 +size var long unsigned int (base type, DW_ATE_unsigned size:8) 0x755c 0x75cc (DW_OP_breg31 0x18) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:115 +nr_cpus var long unsigned int (base type, DW_ATE_unsigned size:8) 0x755c 0x75cc (DW_OP_breg31 0x10) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:116 +per_cpu_base var pointer(long unsigned int (base type, DW_ATE_unsigned size:8)) 0x755c 0x75cc (DW_OP_breg31 0x8) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:117 ~ 0000755c: d10103ff sub sp, sp, #0x40 ~ 00007560: a9037bfd stp x29, x30, [sp, #48] 0000755c CFA:r31 r29:u r30:u ~ 00007564: 9100c3fd add x29, sp, #0x30 ~ 00007568: f81f83a0 stur x0, [x29, #-8] handle___kvm_hyp_protect:114.2 (hyp-main.c) SbePe ║DECLARE_REG(phys_addr_t, phys, host_ctxt, 1); ~ 0000756c: f85f83a8 ldur x8, [x29, #-8] ~ 00007570: f9400508 ldr x8, [x8, #8] ~ 00007574: f81f03a8 stur x8, [x29, #-16] handle___kvm_hyp_protect:115.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long, size, host_ctxt, 2); ~ 00007578: f85f83a8 ldur x8, [x29, #-8] ~ 0000757c: f9400908 ldr x8, [x8, #16] ~ 00007580: f9000fe8 str x8, [sp, #24] handle___kvm_hyp_protect:116.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long, nr_cpus, host_ctxt, 3); ~ 00007584: f85f83a8 ldur x8, [x29, #-8] ~ 00007588: f9400d08 ldr x8, [x8, #24] ~ 0000758c: f9000be8 str x8, [sp, #16] handle___kvm_hyp_protect:117.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long *, per_cpu_base, host_ctxt, 4); ~ 00007590: f85f83a8 ldur x8, [x29, #-8] ~ 00007594: f9401108 ldr x8, [x8, #32] ~ 00007598: f90007e8 str x8, [sp, #8] handle___kvm_hyp_protect:119.44 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = __kvm_hyp_protect(║phys, size, nr_cpus, ~ 0000759c: f85f03a0 ldur x0, [x29, #-16] handle___kvm_hyp_protect:119.50 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __kvm_hyp_protect(phys, ║size, nr_cpus, ~ 000075a0: f9400fe1 ldr x1, [sp, #24] handle___kvm_hyp_protect:119.56 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __kvm_hyp_protect(phys, size, ║nr_cpus, ~ 000075a4: f9400be2 ldr x2, [sp, #16] handle___kvm_hyp_protect:120.9 (hyp-main.c) Sbepe ║per_cpu_base); ~ 000075a8: f94007e3 ldr x3, [sp, #8] handle___kvm_hyp_protect:119.26 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = ║__kvm_hyp_protect(phys, size, nr_cpus, ~ 000075ac: 940009a1 bl 9c30 <__kvm_hyp_protect> ~ 000075b0: 2a0003e1 mov w1, w0 <- 000075ac(bl-succ)<return> ~ 000075b4: 93407c28 sxtw x8, w1 handle___kvm_hyp_protect:119.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __kvm_hyp_protect(phys, size, nr_cpus, ~ 000075b8: f85f83a9 ldur x9, [x29, #-8] handle___kvm_hyp_protect:119.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __kvm_hyp_protect(phys, size, nr_cpus, ~ 000075bc: f9000528 str x8, [x9, #8] handle___kvm_hyp_protect:121.1 (hyp-main.c) Sbepe ║} ~ 000075c0: a9437bfd ldp x29, x30, [sp, #48] ~ 000075c4: 910103ff add sp, sp, #0x40 00007568 CFA:r29+16 r29:c-16 r30:c-8 ~ 000075c8: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x755c 0x75cc (DW_OP_fbreg -0x8) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:112 -phys var typedef(phys_addr_t=typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x755c 0x75cc (DW_OP_fbreg -0x10) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:114 -size var long unsigned int (base type, DW_ATE_unsigned size:8) 0x755c 0x75cc (DW_OP_breg31 0x18) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:115 -nr_cpus var long unsigned int (base type, DW_ATE_unsigned size:8) 0x755c 0x75cc (DW_OP_breg31 0x10) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:116 -per_cpu_base var pointer(long unsigned int (base type, DW_ATE_unsigned size:8)) 0x755c 0x75cc (DW_OP_breg31 0x8) handle___kvm_hyp_protect:arch/arm64/kvm/hyp/nvhe/hyp-main.c:117 **000075cc <handle___hyp_create_mappings>: + handle___hyp_create_mappings params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x75cc 0x763c (DW_OP_fbreg -0x8) handle___hyp_create_mappings:131.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x75cc 0x763c (DW_OP_fbreg -0x8) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:130 +start var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_fbreg -0x10) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:132 +size var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_breg31 0x18) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:133 +phys var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_breg31 0x10) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:134 +prot var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_breg31 0x8) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:135 ~ 000075cc: d10103ff sub sp, sp, #0x40 ~ 000075d0: a9037bfd stp x29, x30, [sp, #48] 000075cc CFA:r31 r29:u r30:u ~ 000075d4: 9100c3fd add x29, sp, #0x30 ~ 000075d8: f81f83a0 stur x0, [x29, #-8] handle___hyp_create_mappings:132.2 (hyp-main.c) SbePe ║DECLARE_REG(unsigned long, start, host_ctxt, 1); ~ 000075dc: f85f83a8 ldur x8, [x29, #-8] ~ 000075e0: f9400508 ldr x8, [x8, #8] ~ 000075e4: f81f03a8 stur x8, [x29, #-16] handle___hyp_create_mappings:133.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long, size, host_ctxt, 2); ~ 000075e8: f85f83a8 ldur x8, [x29, #-8] ~ 000075ec: f9400908 ldr x8, [x8, #16] ~ 000075f0: f9000fe8 str x8, [sp, #24] handle___hyp_create_mappings:134.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long, phys, host_ctxt, 3); ~ 000075f4: f85f83a8 ldur x8, [x29, #-8] ~ 000075f8: f9400d08 ldr x8, [x8, #24] ~ 000075fc: f9000be8 str x8, [sp, #16] handle___hyp_create_mappings:135.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long, prot, host_ctxt, 4); ~ 00007600: f85f83a8 ldur x8, [x29, #-8] ~ 00007604: f9401108 ldr x8, [x8, #32] ~ 00007608: f90007e8 str x8, [sp, #8] handle___hyp_create_mappings:137.48 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = __hyp_create_mappings(║start, size, phys, prot); ~ 0000760c: f85f03a0 ldur x0, [x29, #-16] handle___hyp_create_mappings:137.55 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __hyp_create_mappings(start, ║size, phys, prot); ~ 00007610: f9400fe1 ldr x1, [sp, #24] handle___hyp_create_mappings:137.61 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __hyp_create_mappings(start, size, ║phys, prot); ~ 00007614: f9400be2 ldr x2, [sp, #16] handle___hyp_create_mappings:137.67 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __hyp_create_mappings(start, size, phys, ║prot); ~ 00007618: f94007e3 ldr x3, [sp, #8] handle___hyp_create_mappings:137.26 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = ║__hyp_create_mappings(start, size, phys, prot); ~ 0000761c: 94000c27 bl a6b8 <__hyp_create_mappings> ~ 00007620: 2a0003e1 mov w1, w0 <- 0000761c(bl-succ)<return> ~ 00007624: 93407c28 sxtw x8, w1 handle___hyp_create_mappings:137.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __hyp_create_mappings(start, size, phys, prot); ~ 00007628: f85f83a9 ldur x9, [x29, #-8] handle___hyp_create_mappings:137.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __hyp_create_mappings(start, size, phys, prot); ~ 0000762c: f9000528 str x8, [x9, #8] handle___hyp_create_mappings:138.1 (hyp-main.c) Sbepe ║} ~ 00007630: a9437bfd ldp x29, x30, [sp, #48] ~ 00007634: 910103ff add sp, sp, #0x40 000075d8 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007638: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x75cc 0x763c (DW_OP_fbreg -0x8) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:130 -start var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_fbreg -0x10) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:132 -size var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_breg31 0x18) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:133 -phys var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_breg31 0x10) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:134 -prot var long unsigned int (base type, DW_ATE_unsigned size:8) 0x75cc 0x763c (DW_OP_breg31 0x8) handle___hyp_create_mappings:arch/arm64/kvm/hyp/nvhe/hyp-main.c:135 **0000763c <handle___hyp_create_private_mapping>: + handle___hyp_create_private_mapping params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x763c 0x7694 (DW_OP_fbreg -0x8) handle___hyp_create_private_mapping:141.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x763c 0x7694 (DW_OP_fbreg -0x8) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:140 +phys var typedef(phys_addr_t=typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x763c 0x7694 (DW_OP_breg31 0x10) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:142 +size var typedef(size_t=typedef(__kernel_size_t=typedef(__kernel_ulong_t=long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x763c 0x7694 (DW_OP_breg31 0x8) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:143 +prot var long unsigned int (base type, DW_ATE_unsigned size:8) 0x763c 0x7694 (DW_OP_breg31 0x0) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:144 ~ 0000763c: d100c3ff sub sp, sp, #0x30 ~ 00007640: a9027bfd stp x29, x30, [sp, #32] 0000763c CFA:r31 r29:u r30:u ~ 00007644: 910083fd add x29, sp, #0x20 ~ 00007648: f81f83a0 stur x0, [x29, #-8] handle___hyp_create_private_mapping:142.2 (hyp-main.c) SbePe ║DECLARE_REG(phys_addr_t, phys, host_ctxt, 1); ~ 0000764c: f85f83a8 ldur x8, [x29, #-8] ~ 00007650: f9400508 ldr x8, [x8, #8] ~ 00007654: f9000be8 str x8, [sp, #16] handle___hyp_create_private_mapping:143.2 (hyp-main.c) Sbepe ║DECLARE_REG(size_t, size, host_ctxt, 2); ~ 00007658: f85f83a8 ldur x8, [x29, #-8] ~ 0000765c: f9400908 ldr x8, [x8, #16] ~ 00007660: f90007e8 str x8, [sp, #8] handle___hyp_create_private_mapping:144.2 (hyp-main.c) Sbepe ║DECLARE_REG(unsigned long, prot, host_ctxt, 3); ~ 00007664: f85f83a8 ldur x8, [x29, #-8] ~ 00007668: f9400d08 ldr x8, [x8, #24] ~ 0000766c: f90003e8 str x8, [sp] handle___hyp_create_private_mapping:146.55 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = __hyp_create_private_mapping(║phys, size, prot); ~ 00007670: f9400be0 ldr x0, [sp, #16] handle___hyp_create_private_mapping:146.61 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __hyp_create_private_mapping(phys, ║size, prot); ~ 00007674: f94007e1 ldr x1, [sp, #8] handle___hyp_create_private_mapping:146.67 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = __hyp_create_private_mapping(phys, size, ║prot); ~ 00007678: f94003e2 ldr x2, [sp] handle___hyp_create_private_mapping:146.26 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = ║__hyp_create_private_mapping(phys, size, prot); ~ 0000767c: 94000c46 bl a794 <__hyp_create_private_mapping> handle___hyp_create_private_mapping:146.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = __hyp_create_private_mapping(phys, size, prot); ~ 00007680: f85f83a8 ldur x8, [x29, #-8] <- 0000767c(bl-succ)<return> handle___hyp_create_private_mapping:146.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= __hyp_create_private_mapping(phys, size, prot); ~ 00007684: f9000500 str x0, [x8, #8] handle___hyp_create_private_mapping:147.1 (hyp-main.c) Sbepe ║} ~ 00007688: a9427bfd ldp x29, x30, [sp, #32] ~ 0000768c: 9100c3ff add sp, sp, #0x30 00007648 CFA:r29+16 r29:c-16 r30:c-8 ~ 00007690: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x763c 0x7694 (DW_OP_fbreg -0x8) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:140 -phys var typedef(phys_addr_t=typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x763c 0x7694 (DW_OP_breg31 0x10) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:142 -size var typedef(size_t=typedef(__kernel_size_t=typedef(__kernel_ulong_t=long unsigned int (base type, DW_ATE_unsigned size:8)))) 0x763c 0x7694 (DW_OP_breg31 0x8) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:143 -prot var long unsigned int (base type, DW_ATE_unsigned size:8) 0x763c 0x7694 (DW_OP_breg31 0x0) handle___hyp_create_private_mapping:arch/arm64/kvm/hyp/nvhe/hyp-main.c:144 **00007694 <handle___hyp_cpu_set_vector>: + handle___hyp_cpu_set_vector params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7694 0x76d4 (DW_OP_breg31 0x8) handle___hyp_cpu_set_vector:124.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7694 0x76d4 (DW_OP_breg31 0x8) handle___hyp_cpu_set_vector:arch/arm64/kvm/hyp/nvhe/hyp-main.c:123 +slot var enum arm64_hyp_spectre_vector<4ce73>/<5b47f> 0x7694 0x76d4 (DW_OP_breg31 0x4) handle___hyp_cpu_set_vector:arch/arm64/kvm/hyp/nvhe/hyp-main.c:125 ~ 00007694: d10083ff sub sp, sp, #0x20 ~ 00007698: a9017bfd stp x29, x30, [sp, #16] 00007694 CFA:r31 r29:u r30:u ~ 0000769c: 910043fd add x29, sp, #0x10 ~ 000076a0: f90007e0 str x0, [sp, #8] handle___hyp_cpu_set_vector:125.2 (hyp-main.c) SbePe ║DECLARE_REG(enum arm64_hyp_spectre_vector, slot, host_ctxt, 1); ~ 000076a4: f94007e8 ldr x8, [sp, #8] ~ 000076a8: f9400508 ldr x8, [x8, #8] ~ 000076ac: b90007e8 str w8, [sp, #4] handle___hyp_cpu_set_vector:127.45 (hyp-main.c) Sbepe cpu_reg(host_ctxt, 1) = hyp_cpu_set_vector(║slot); ~ 000076b0: b94007e0 ldr w0, [sp, #4] handle___hyp_cpu_set_vector:127.26 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) = ║hyp_cpu_set_vector(slot); ~ 000076b4: 94000cef bl aa70 <hyp_cpu_set_vector> ~ 000076b8: 2a0003e1 mov w1, w0 <- 000076b4(bl-succ)<return> ~ 000076bc: 93407c29 sxtw x9, w1 handle___hyp_cpu_set_vector:127.2 (hyp-main.c) sbepe ║cpu_reg(host_ctxt, 1) = hyp_cpu_set_vector(slot); ~ 000076c0: f94007ea ldr x10, [sp, #8] handle___hyp_cpu_set_vector:127.24 (hyp-main.c) sbepe cpu_reg(host_ctxt, 1) ║= hyp_cpu_set_vector(slot); ~ 000076c4: f9000549 str x9, [x10, #8] handle___hyp_cpu_set_vector:128.1 (hyp-main.c) Sbepe ║} ~ 000076c8: a9417bfd ldp x29, x30, [sp, #16] ~ 000076cc: 910083ff add sp, sp, #0x20 000076a0 CFA:r29+16 r29:c-16 r30:c-8 ~ 000076d0: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x7694 0x76d4 (DW_OP_breg31 0x8) handle___hyp_cpu_set_vector:arch/arm64/kvm/hyp/nvhe/hyp-main.c:123 -slot var enum arm64_hyp_spectre_vector<4ce73>/<5b47f> 0x7694 0x76d4 (DW_OP_breg31 0x4) handle___hyp_cpu_set_vector:arch/arm64/kvm/hyp/nvhe/hyp-main.c:125 **000076d4 <default_host_smc_handler>: + default_host_smc_handler params: +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x76d4 0x76f8 (DW_OP_breg31 0x8) default_host_smc_handler:200.0 (hyp-main.c) Sbepe ║{ +host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x76d4 0x76f8 (DW_OP_breg31 0x8) default_host_smc_handler:arch/arm64/kvm/hyp/nvhe/hyp-main.c:199 ~ 000076d4: d10083ff sub sp, sp, #0x20 <- 000071c0(bl)<default_host_smc_handler> ~ 000076d8: a9017bfd stp x29, x30, [sp, #16] 000076d4 CFA:r31 r29:u r30:u ~ 000076dc: 910043fd add x29, sp, #0x10 ~ 000076e0: f90007e0 str x0, [sp, #8] default_host_smc_handler:201.29 (hyp-main.c) SbePe __kvm_hyp_host_forward_smc(║host_ctxt); ~ 000076e4: f94007e0 ldr x0, [sp, #8] default_host_smc_handler:201.2 (hyp-main.c) sbepe ║__kvm_hyp_host_forward_smc(host_ctxt); ~ 000076e8: 97fffe2b bl 6f94 <__kvm_hyp_host_forward_smc> default_host_smc_handler:202.1 (hyp-main.c) Sbepe ║} ~ 000076ec: a9417bfd ldp x29, x30, [sp, #16] <- 000076e8(bl-succ)<return> ~ 000076f0: 910083ff add sp, sp, #0x20 000076e0 CFA:r29+16 r29:c-16 r30:c-8 ~ 000076f4: d65f03c0 ret -host_ctxt param pointer(struct kvm_cpu_context<4ce73>/<4cf91>) 0x76d4 0x76f8 (DW_OP_breg31 0x8) default_host_smc_handler:arch/arm64/kvm/hyp/nvhe/hyp-main.c:199 **000076f8 <kvm_skip_host_instr>: + kvm_skip_host_instr params: none kvm_skip_host_instr:67.0 (adjust_pc.h) Sbepe ║{ 000076f8 CFA:r31 ~ 000076f8: d10083ff sub sp, sp, #0x20 <- 000071c8(bl)<kvm_skip_host_instr> kvm_skip_host_instr:68.2 (adjust_pc.h) SbePe ║write_sysreg_el2(read_sysreg_el2(SYS_ELR) + 4, SYS_ELR); ~ ┌─000076fc: 14000001 b 7700 <kvm_skip_host_instr+0x8> +__val var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7700 0x7728 (DW_OP_fbreg 0x18) lexblock:kvm_skip_host_instr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:68 +reg var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7700 0x7714 (DW_OP_fbreg 0x10) lexblock:lexblock:kvm_skip_host_instr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:68 ~ └>00007700: d53c4028 mrs x8, elr_el2 <- 000076fc(b)<kvm_skip_host_instr+0x8> kvm_skip_host_instr:68.2 (adjust_pc.h) sbepe ║write_sysreg_el2(read_sysreg_el2(SYS_ELR) + 4, SYS_ELR); ~ 00007704: f9000be8 str x8, [sp, #16] ~ 00007708: f9400be8 ldr x8, [sp, #16] ~ 0000770c: f90007e8 str x8, [sp, #8] ~ 00007710: f94007e8 ldr x8, [sp, #8] -reg var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7700 0x7714 (DW_OP_fbreg 0x10) lexblock:lexblock:kvm_skip_host_instr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:68 kvm_skip_host_instr:68.2 (adjust_pc.h) sbepe ║write_sysreg_el2(read_sysreg_el2(SYS_ELR) + 4, SYS_ELR); ~ 00007714: 91001108 add x8, x8, #0x4 ~ 00007718: f9000fe8 str x8, [sp, #24] ~ 0000771c: f9400fe8 ldr x8, [sp, #24] ~ 00007720: d51c4028 msr elr_el2, x8 ~ ┌─00007724: 14000001 b 7728 <kvm_skip_host_instr+0x30> -__val var typedef(u64=typedef(__u64=long long unsigned int (base type, DW_ATE_unsigned size:8))) 0x7700 0x7728 (DW_OP_fbreg 0x18) lexblock:kvm_skip_host_instr:arch/arm64/kvm/hyp/nvhe/hyp-main.c:68 kvm_skip_host_instr:69.1 (adjust_pc.h) Sbepe ║} ~ └>00007728: 910083ff add sp, sp, #0x20 <- 00007724(b)<kvm_skip_host_instr+0x30> ~ 0000772c: d65f03c0 ret ~ 00007730: d5385208 mrs x8, esr_el1 ~ 00007734: d5381008 mrs x8, sctlr_el1 ~ 00007738: d5181008 msr sctlr_el1, x8 ~ 0000773c: d5384028 mrs x8, elr_el1 000076fc CFA:r31+32 ~ 00007740: d5184028 msr elr_el1, x8