From: Kunwu Chan <kunwu.chan@linux.dev>
To: Mostafa Saleh <smostafa@google.com>
Cc: linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/2] KVM: arm64: Dump instruction on hyp panic
Date: Fri, 1 Aug 2025 16:00:43 +0800 [thread overview]
Message-ID: <ea6bf206-6a68-496e-a941-4423973ef4ba@linux.dev> (raw)
In-Reply-To: <CAFgf54q3KVOZ0Tji+dpnvnPCbvpN4z1Yhm5jfpEmDPhndo6bXA@mail.gmail.com>
Hi Mostafa,
On 2025/7/31 21:05, Mostafa Saleh wrote:
> Hi Kunwu,
>
> On Thu, Jul 31, 2025 at 1:59 PM Kunwu Chan <kunwu.chan@linux.dev> wrote:
>> Hi Mostafa,
>> On 2025/7/18 07:47, Mostafa Saleh wrote:
>>
>> ... ....
>>
>>> + /* Dump the faulting instruction */
>>> + if (!is_protected_kvm_enabled() ||
>>> + IS_ENABLED(CONFIG_NVHE_EL2_DEBUG))
>>> + dump_instr(panic_addr + kaslr_offset());
>>> +
>> This part seem like unnecessary, cause it'll be remove in patch 2(Only
>> the comment left).
>>
> Yes, the idea is that the first patch adds that only for CONFIG_NVHE_EL2_DEBUG
> while the second does that for all configs, I split it this way as
> doing that with stage-2
> requires intrusive changes, so at least this patch can be picked
> separately if needed.
>
>>> /*
>>> * Hyp has panicked and we're going to handle that by panicking the
>>> * kernel. The kernel offset will be revealed in the panic so we're
>> Another confusion is that no similar wording to what you mentioned in
>> the cover—specifically "Cannot dump pKVM nVHE stacktrace:
>> !CONFIG_PROTECTED_NVHE_STACKTRACE"—has been found in the code.
>>
> I am not sure I follow, this has nothing to do with
> "CONFIG_PROTECTED_NVHE_STACKTRACE"
> This series added the print for for instructions as:
> [ 12.016044] Code: a8c17bfd d50323bf d65f03c0 d503245f (d4210000)
>
> All other prints are from already existing code.
Got it—I see what happened now. Turns out the confusion was caused
by my CONFIG_PROTECTED_NVHE_STACKTRACE being enabled.
After turning that off and testing Patch 1 standalone, everything works
exactly as you described.
The test results:
1: disable CONFIG_NVHE_EL2_DEBUG
--> "kvm [5375]: Hyp Offset: 0xfffec95693400000"
2: enable CONFIG_NVHE_EL2_DEBUG
--> "[ 684.715883][ T5525] Code: d51d991f d51d9901 d5159001 00000000
(d4210000)
[ 684.715974][ T5525] kvm [5525]: Hyp Offset:
0xfffe992b13400000"
3: without this patch :
--> "kvm [5497]: Hyp Offset: 0xfffedd4993400000"
Thanks for the clarification—really appreciate your help!
>
> Thanks,
> Mostafa
Feel free to add :
Tested-by: Kunwu Chan <chentao@kylinos.cn>
Reviewed-by: Kunwu Chan <chentao@kylinos.cn>
--
Thanks,
Kunwu Chan.
next prev parent reply other threads:[~2025-08-01 8:01 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-17 23:47 [PATCH 0/2] Dump instructions on panic for pKVM/nvhe Mostafa Saleh
2025-07-17 23:47 ` [PATCH 1/2] KVM: arm64: Dump instruction on hyp panic Mostafa Saleh
2025-07-31 12:58 ` Kunwu Chan
2025-07-31 13:05 ` Mostafa Saleh
2025-08-01 8:00 ` Kunwu Chan [this message]
2025-07-17 23:47 ` [PATCH 2/2] KVM: arm64: Map hyp text as RO and dump instr on panic Mostafa Saleh
2025-07-18 10:16 ` Ben Horgan
2025-07-18 10:22 ` Mostafa Saleh
2025-07-18 10:35 ` Ben Horgan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ea6bf206-6a68-496e-a941-4423973ef4ba@linux.dev \
--to=kunwu.chan@linux.dev \
--cc=kvmarm@lists.linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=smostafa@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).