[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v1 18/27] xen/riscv: add vaplic access check
- To: Jan Beulich <jbeulich@xxxxxxxx>
- From: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
- Date: Wed, 15 Apr 2026 09:35:16 +0200
- Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=20251104 header.d=gmail.com header.i="@gmail.com" header.h="Content-Transfer-Encoding:In-Reply-To:Content-Language:References:Cc:To:From:Subject:User-Agent:MIME-Version:Date:Message-ID"
- Cc: Romain Caritey <Romain.Caritey@xxxxxxxxxxxxx>, Alistair Francis <alistair.francis@xxxxxxx>, Connor Davis <connojdavis@xxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Julien Grall <julien@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
- Delivery-date: Wed, 15 Apr 2026 07:35:38 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 4/14/26 1:45 PM, Oleksii Kurochko wrote:
+static int cf_check vaplic_is_access(const struct vcpu *vcpu,
+ const unsigned long addr)
+{
+ const struct vaplic *vaplic = to_vaplic(vcpu->domain->arch.vintc);
+ const struct aplic_priv *priv = vaplic->base.info->private;
+ const paddr_t paddr_end = priv->paddr_start + priv->size;
+
+ /* check if it is an APLIC access */
+ if ( priv->paddr_start <= addr && addr < paddr_end )
... use that here? Or asked differently, again: Where's the
virtualization,
i.e. the abstraction away from host properties?
With the current use case it was easier to choose such approach then
provide the full abstraction.
BUt specifically here even with the current approach there is no too
much sense to check MMIO of real APLIC.
~ Oleksii
|