From: Marc Zyngier <maz@kernel.org>
To: Kalesh Singh <kaleshsingh@google.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
Mark Brown <broonie@kernel.org>,
"Madhavan T. Venkataraman" <madvenka@linux.microsoft.com>,
Will Deacon <will@kernel.org>,
Quentin Perret <qperret@google.com>,
Fuad Tabba <tabba@google.com>, James Morse <james.morse@arm.com>,
Alexandru Elisei <alexandru.elisei@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Catalin Marinas <catalin.marinas@arm.com>,
andreyknvl@gmail.com, vincenzo.frascino@arm.com,
Masami Hiramatsu <mhiramat@kernel.org>,
Alexei Starovoitov <ast@kernel.org>,
Kefeng Wang <wangkefeng.wang@huawei.com>,
Marco Elver <elver@google.com>, Keir Fraser <keirf@google.com>,
Zenghui Yu <yuzenghui@huawei.com>,
Ard Biesheuvel <ardb@kernel.org>,
Oliver Upton <oupton@google.com>,
"moderated list:ARM64 PORT (AARCH64 ARCHITECTURE)"
<linux-arm-kernel@lists.infradead.org>,
kvmarm <kvmarm@lists.cs.columbia.edu>,
LKML <linux-kernel@vger.kernel.org>,
"Cc: Android Kernel" <kernel-team@android.com>
Subject: Re: [PATCH v4 08/18] KVM: arm64: Add PROTECTED_NVHE_STACKTRACE Kconfig
Date: Tue, 19 Jul 2022 11:35:18 +0100 [thread overview]
Message-ID: <87ilntz8yh.wl-maz@kernel.org> (raw)
In-Reply-To: <CAC_TJvcyb6xQhvuoSHpC6+LmeSAqbDk9Fnb=x-bB7UxxMek3EA@mail.gmail.com>
On Mon, 18 Jul 2022 18:03:30 +0100,
Kalesh Singh <kaleshsingh@google.com> wrote:
>
> On Sun, Jul 17, 2022 at 11:56 PM Marc Zyngier <maz@kernel.org> wrote:
> >
> > [- Drew and android-mm, as both addresses bounce]
> >
> > On Fri, 15 Jul 2022 07:10:17 +0100,
> > Kalesh Singh <kaleshsingh@google.com> wrote:
> > >
> > > This can be used to disable stacktrace for the protected KVM
> > > nVHE hypervisor, in order to save on the associated memory usage.
> > >
> > > This option is disabled by default, since protected KVM is not widely
> > > used on platforms other than Android currently.
> > >
> > > Signed-off-by: Kalesh Singh <kaleshsingh@google.com>
> > > ---
> > > arch/arm64/kvm/Kconfig | 15 +++++++++++++++
> > > 1 file changed, 15 insertions(+)
> > >
> > > diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
> > > index 8a5fbbf084df..1edab6f8a3b8 100644
> > > --- a/arch/arm64/kvm/Kconfig
> > > +++ b/arch/arm64/kvm/Kconfig
> > > @@ -46,6 +46,21 @@ menuconfig KVM
> > >
> > > If unsure, say N.
> > >
> > > +config PROTECTED_NVHE_STACKTRACE
> > > + bool "Protected KVM hypervisor stacktraces"
> > > + depends on KVM
> > > + default n
> > > + help
> > > + Say Y here to enable pKVM hypervisor stacktraces on hyp_panic()
> > > +
> > > + If you are not using protected nVHE (pKVM), say N.
> > > +
> > > + If using protected nVHE mode, but cannot afford the associated
> > > + memory cost (less than 0.75 page per CPU) of pKVM stacktraces,
> > > + say N.
> > > +
> > > + If unsure, say N.
> > > +
> >
> > Can we make this depend on NVHE_EL2_DEBUG instead? I'd like to keep
> > the disclosing of EL2 information in protected mode a strict debug
> > feature.
>
> Hi Marc,
>
> An earlier version was similar to what you propose. The unwinding
> depended on NVHE_EL2_DEBUG and all unwinding was done from EL1 with
> host stage 2 being disabled. The reason the design was changed is
> because Android expressed the need for pKVM hyp stacktraces in
> production environments. [1]
I think that's an Android-specific requirement that doesn't apply to
upstream. If Android wants to enable this in production (and
potentially leak details of the hypervisor address space), that's
Android's business, and they can carry a patch for that. Upstream
shouldn't have to cater for such a thing.
Thanks,
M.
--
Without deviation from the norm, progress is not possible.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2022-07-19 10:36 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-15 6:10 [PATCH v4 00/18] KVM nVHE Hypervisor stack unwinder Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 01/18] arm64: stacktrace: Add shared header for common stack unwinding code Kalesh Singh
2022-07-15 12:37 ` Mark Brown
2022-07-15 13:58 ` Fuad Tabba
2022-07-18 12:52 ` Russell King (Oracle)
2022-07-18 15:26 ` Kalesh Singh
2022-07-18 16:00 ` Russell King (Oracle)
2022-07-15 6:10 ` [PATCH v4 02/18] arm64: stacktrace: Factor out on_accessible_stack_common() Kalesh Singh
2022-07-15 13:58 ` Fuad Tabba
2022-07-15 16:28 ` Mark Brown
2022-07-15 6:10 ` [PATCH v4 03/18] arm64: stacktrace: Factor out unwind_next_common() Kalesh Singh
2022-07-15 13:58 ` Fuad Tabba
2022-07-15 16:29 ` Mark Brown
2022-07-15 6:10 ` [PATCH v4 04/18] arm64: stacktrace: Handle frame pointer from different address spaces Kalesh Singh
2022-07-15 13:56 ` Fuad Tabba
2022-07-18 17:40 ` Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 05/18] arm64: stacktrace: Factor out common unwind() Kalesh Singh
2022-07-15 13:58 ` Fuad Tabba
2022-07-15 6:10 ` [PATCH v4 06/18] arm64: stacktrace: Add description of stacktrace/common.h Kalesh Singh
2022-07-15 13:59 ` Fuad Tabba
2022-07-17 9:57 ` Marc Zyngier
2022-07-18 16:53 ` Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 07/18] KVM: arm64: On stack overflow switch to hyp overflow_stack Kalesh Singh
2022-07-18 9:46 ` Fuad Tabba
2022-07-15 6:10 ` [PATCH v4 08/18] KVM: arm64: Add PROTECTED_NVHE_STACKTRACE Kconfig Kalesh Singh
2022-07-18 6:55 ` Marc Zyngier
2022-07-18 17:03 ` Kalesh Singh
2022-07-19 10:35 ` Marc Zyngier [this message]
2022-07-19 18:23 ` Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 09/18] KVM: arm64: Allocate shared pKVM hyp stacktrace buffers Kalesh Singh
2022-07-18 7:13 ` Marc Zyngier
2022-07-18 17:27 ` Kalesh Singh
2022-07-18 10:00 ` Fuad Tabba
2022-07-15 6:10 ` [PATCH v4 10/18] KVM: arm64: Stub implementation of pKVM HYP stack unwinder Kalesh Singh
2022-07-18 7:20 ` Marc Zyngier
2022-07-15 6:10 ` [PATCH v4 11/18] KVM: arm64: Stub implementation of non-protected nVHE " Kalesh Singh
2022-07-18 7:30 ` Marc Zyngier
2022-07-18 16:51 ` Kalesh Singh
2022-07-18 16:57 ` Marc Zyngier
2022-07-15 6:10 ` [PATCH v4 12/18] KVM: arm64: Save protected-nVHE (pKVM) hyp stacktrace Kalesh Singh
2022-07-18 9:36 ` Marc Zyngier
2022-07-18 17:32 ` Kalesh Singh
2022-07-18 10:07 ` Fuad Tabba
2022-07-18 17:36 ` Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 13/18] KVM: arm64: Prepare non-protected nVHE hypervisor stacktrace Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 14/18] KVM: arm64: Implement protected nVHE hyp stack unwinder Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 15/18] KVM: arm64: Implement non-protected " Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 16/18] KVM: arm64: Introduce pkvm_dump_backtrace() Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 17/18] KVM: arm64: Introduce hyp_dump_backtrace() Kalesh Singh
2022-07-15 6:10 ` [PATCH v4 18/18] KVM: arm64: Dump nVHE hypervisor stack on panic Kalesh Singh
2022-07-15 13:55 ` [PATCH v4 00/18] KVM nVHE Hypervisor stack unwinder Fuad Tabba
2022-07-15 18:58 ` Kalesh Singh
2022-07-16 0:04 ` Kalesh Singh
2022-07-19 10:43 ` Marc Zyngier
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=87ilntz8yh.wl-maz@kernel.org \
--to=maz@kernel.org \
--cc=alexandru.elisei@arm.com \
--cc=andreyknvl@gmail.com \
--cc=ardb@kernel.org \
--cc=ast@kernel.org \
--cc=broonie@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=elver@google.com \
--cc=james.morse@arm.com \
--cc=kaleshsingh@google.com \
--cc=keirf@google.com \
--cc=kernel-team@android.com \
--cc=kvmarm@lists.cs.columbia.edu \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=madvenka@linux.microsoft.com \
--cc=mark.rutland@arm.com \
--cc=mhiramat@kernel.org \
--cc=oupton@google.com \
--cc=qperret@google.com \
--cc=suzuki.poulose@arm.com \
--cc=tabba@google.com \
--cc=vincenzo.frascino@arm.com \
--cc=wangkefeng.wang@huawei.com \
--cc=will@kernel.org \
--cc=yuzenghui@huawei.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).