[PATCH v2 0/3] Fix io accessors for KVM
Ilias Apalodimas
ilias.apalodimas at linaro.org
Wed Jun 18 14:04:42 CEST 2025
Hi Jerome,
On Wed, 18 Jun 2025 at 14:03, Jerome Forissier
<jerome.forissier at linaro.org> wrote:
>
>
>
> On 6/18/25 08:58, Ilias Apalodimas wrote:
> > Instructions that lead ito an exception in the hypervisor can't modify two
> > CPU registers at once for the ARM ISA.
> >
> > These instructions cannot be emulated by KVM as they do not produce
> > syndrome information data that KVM can use to infer the destination
> > register, the faulting address, whether it was a load or store, or
> > if it's a 32 or 64 bit general-purpose register.
> > As a result an external abort is injected from QEMU, via ext_dabt_pending.
> >
> > Patch #1 prepares some function for the modified macros
> > Patch #2 modifies the macros
> > Patch #3 enables the functionality for armv7/8 QEMU
>
> Again, IMHO this is more complex than necessary because you're combining
> the KVM fix with some code refactoring. Patch #1 can be dropped altogether
> and patch #2 can be simplified (from "2 files changed, 123 insertions(+),
> 39 deletions(-)" to "2 files changed, 97 insertions(+)". Unless I missed
> something? Please see [1]. Of course it also passes the LVM test ;)
No you aren't. I just kept it as is because Tom said he was fine and
makes the final code easier to read, rather than having 2 macros doing
the same thing.
Thanks
/Ilias
>
> [1] https://source.denx.de/u-boot/custodians/u-boot-net/-/pipelines/26751.
>
> --
> Jerome
>
> >
> > Changes since v1:
> > - Split the function modification in its own patch
> > - Don't limit the changes to v8 only
> >
> > Ilias Apalodimas (3):
> > nxp: Prepare macros for KVM changes
> > arm: io.h: Fix io accessors for KVM
> > qemu: arm: Enable virtualizable IO accesors
> >
> > arch/arm/Kconfig | 12 +++
> > arch/arm/include/asm/io.h | 152 ++++++++++++++++++++++++++---------
> > configs/qemu_arm64_defconfig | 1 +
> > configs/qemu_arm_defconfig | 1 +
> > drivers/spi/fsl_dspi.c | 6 +-
> > include/fsl_ifc.h | 24 +++---
> > 6 files changed, 142 insertions(+), 54 deletions(-)
> >
> > --
> > 2.43.0
> >
More information about the U-Boot
mailing list