From: sashiko-bot@kernel.org
To: "Kristina Martšenko" <kristina.martsenko@arm.com>
Cc: "Marc Zyngier" <maz@kernel.org>,
"Oliver Upton" <oupton@kernel.org>,
kvmarm@lists.linux.dev
Subject: Re: [RFC 05/12] ACPICA: Add TLBI table definition
Date: Thu, 01 Oct 2026 11:56:14 +0000 [thread overview]
Message-ID: <20261001115614.82F9F1F0089A@smtp.kernel.org> (raw)
In-Reply-To: <20261001110655.461473-6-kristina.martsenko@arm.com>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] acpi: direct modification of upstream ACPICA headers with draft specs
- [Medium] kvm: arm64: HCRX_EL2.FNB bit is not filtered for nested hypervisors
--
commit 1c073d3327bf45ba56b8ee1d936edd5e15ec68be
Author: Kristina Martšenko <kristina.martsenko@arm.com>
ACPICA: Add TLBI table definition
This commit adds the definition of the new Arm TLBI ACPI table to the global
acpica headers. The table is noted as an initial proposal that is not yet
public and may change.
> diff --git a/include/acpi/actbl2.h b/include/acpi/actbl2.h
> index baef525367b5c..68849c9f7cf69 100644
> --- a/include/acpi/actbl2.h
> +++ b/include/acpi/actbl2.h
> @@ -61,6 +61,7 @@
> #define ACPI_SIG_SVKL "SVKL" /* Storage Volume Key Location Table */
> #define ACPI_SIG_SWFT "SWFT" /* SoundWire File Table */
> #define ACPI_SIG_TDEL "TDEL" /* TD Event Log Table */
> +#define ACPI_SIG_TLBI "TLBI" /* TLB Invalidate Domain Table */
^^^^
[Severity: Medium]
Is it appropriate to introduce a draft, non-final table signature directly into
the global upstream-maintained acpica headers?
The commit message explicitly notes this patch should not be merged as is
because the TLBI table description is not yet public and may change. Merging
draft specifications creates a risk of dead uapi and compatibility issues if
the final specification differs.
[ ... ]
> @@ -3701,6 +3702,37 @@ struct acpi_table_tdel {
> u64 log_area_start_address;
> };
>
> +/*******************************************************************************
> + *
> + * TLBI - TLBI Domain Table
> + *
> + ******************************************************************************/
> +
> +struct acpi_table_tlbi {
> + struct acpi_table_header header;
> + u32 domain_count;
> + u32 domains_offset;
> +};
[Severity: Medium]
Is it acceptable to add a Linux-specific out-of-tree structure definition to an
upstream-maintained acpica file?
The acpica headers are maintained upstream, and Linux kernel policy typically
requires changes to first be accepted by the acpica project before being synced
to the Linux tree.
commit cb4c50a2ac546f3127893846943d61a1ea5cc49e
Author: Kristina Martšenko <kristina.martsenko@arm.com>
KVM: arm64: Hide TLBID from guest sysregs
This commit hides TLBID system registers and fields from the guest to prevent
them from discovering domains. It reports the feature as unsupported and
sanitizes a nested hypervisor's HCRX register bits.
> * Sanitize a nested hypervisor's HCRX.{VTLBIDEn,VTLBIDOSEn,FNB}.
[Severity: Medium]
The commit message claims to sanitize the guest's HCRX_EL2.FNB bit, but it
appears HCRX_EL2_FNB is omitted from NV_HCRX_GUEST_EXCLUDE:
arch/arm64/kvm/hyp/include/hyp/switch.h:
#define NV_HCRX_GUEST_EXCLUDE (HCRX_EL2_TMEA | HCRX_EL2_PTTWI | \
HCRX_EL2_EnIDCP128 | HCRX_EL2_VTLBIDEn | \
HCRX_EL2_VTLBIDOSEn)
Because HCRX_EL2 is a VNCR-backed register, a nested guest hypervisor (L1) can
write to it directly in memory without trapping. During context switch, KVM
reads the guest's HCRX_EL2 from the VNCR page and masks it with
~NV_HCRX_GUEST_EXCLUDE.
Since FNB is not excluded, will KVM apply the guest's FNB bit to the physical
HCRX_EL2 register, breaking the virtualization boundary?
The impact appears to be limited to the guest's own TLBI coherence.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261001110655.461473-1-kristina.martsenko@arm.com?part=5
next prev parent reply other threads:[~2026-10-01 11:56 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-01 11:06 [RFC 00/12] arm64: Add support for TLBI domains Kristina Martšenko
2026-10-01 11:06 ` [RFC 01/12] arm64: sysreg: Add definitions for FEAT_TLBID Kristina Martšenko
2026-10-01 11:06 ` [RFC 02/12] arm64: Detect FEAT_TLBID Kristina Martšenko
2026-10-01 11:06 ` [RFC 03/12] KVM: arm64: Hide TLBID from guest sysregs Kristina Martšenko
2026-10-12 8:12 ` Steffen Eiden
2026-10-01 11:06 ` [RFC 04/12] KVM: arm64: Hide TLBID from guest instructions Kristina Martšenko
2026-10-01 11:06 ` [RFC 05/12] ACPICA: Add TLBI table definition Kristina Martšenko
2026-10-01 11:56 ` sashiko-bot [this message]
2026-10-01 11:06 ` [RFC 06/12] ACPI: TLBI: Parse domains from table Kristina Martšenko
2026-10-01 12:04 ` sashiko-bot
2026-10-01 11:06 ` [RFC 07/12] arm64: tlbid: Set up CPU domain bitmaps Kristina Martšenko
2026-10-01 11:06 ` [RFC 08/12] efi/arm: Check return value of init_new_context() Kristina Martšenko
2026-10-04 8:00 ` Ard Biesheuvel
2026-10-01 11:06 ` [RFC 09/12] arm64: tlbid: Track the TLBI domain of a task Kristina Martšenko
2026-10-01 11:06 ` [RFC 10/12] arm64: Support TLBIP instructions Kristina Martšenko
2026-10-01 12:40 ` sashiko-bot
2026-10-01 11:06 ` [RFC 11/12] arm64: tlbid: Pass domain to TLBI instructions Kristina Martšenko
2026-10-01 12:54 ` sashiko-bot
2026-10-01 11:06 ` [RFC 12/12] arm64: tlbid: Add documentation Kristina Martšenko
2026-10-03 16:12 ` [RFC 00/12] arm64: Add support for TLBI domains Marc Zyngier
2026-10-05 8:40 ` Oliver Upton
2026-10-04 18:06 ` Zi Yan
2026-10-05 6:29 ` Will Deacon
2026-10-05 18:13 ` Zi Yan
2026-10-05 11:07 ` Catalin Marinas
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=20261001115614.82F9F1F0089A@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=kristina.martsenko@arm.com \
--cc=kvmarm@lists.linux.dev \
--cc=maz@kernel.org \
--cc=oupton@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.