Re: v6.13-rc1: Internal error: Oops - Undefined instruction: 0000000002000000 [#1] SMP

From: Vitaly Chikunov
Date: Mon Dec 02 2024 - 23:03:59 EST


Oliver, Marc,

On Mon, Dec 02, 2024 at 05:19:54PM -0800, Oliver Upton wrote:
> On Tue, Dec 03, 2024 at 01:31:19AM +0300, Vitaly Chikunov wrote:
> > Marc,
> >
> > On Mon, Dec 02, 2024 at 04:07:03PM +0000, Marc Zyngier wrote:
> > > On Mon, 02 Dec 2024 15:59:40 +0000,
> > > Vitaly Chikunov <vt@xxxxxxxxxxxx> wrote:
> > > >
> > > > Marc,
> > > >
> > > > On Mon, Dec 02, 2024 at 03:53:59PM +0000, Marc Zyngier wrote:
> > > > >
> > > > > What the log doesn't say is what the host is. Is it 6.13-rc1 as well?
> > > >
> > > > No, host is 6.6.60.
> > >
> > > Right. I wouldn't be surprised if:
> > >
> > > - this v6.6 kernel doesn't hide the MPAM feature as it should (and
> > > that's proably something we should backport)
> >
> > How to confirm this? Currently I cannot find any (case-insensitive)
> > "MPAM" files in /sys, nor mpam string in /proc/cpuinfo, nor MPAM strings
> > in `strace -v` (as it decodes some KVM ioctls) of qemu process.
>
> If you can attach to the QEMU gdbstub of the VM, info registers will
> dump ~everything.
>
> If the value of ID_AA64PFR0_EL1.MPAM (bits 43:40) is nonzero then the
> host KVM is erroneously advertising MPAM to the guest.

I don't find such register. There is what I get:

(gdb) target remote :1234
Remote debugging using :1234
0x0000000040000000 in ?? ()

(gdb) pipe i r | grep ID_AA64PFR

ID_AA64PFR1_EL1 0x0 0
ID_AA64PFR2_EL1_RESERVED 0x0 0
ID_AA64PFR3_EL1_RESERVED 0x0 0
ID_AA64PFR6_EL1_RESERVED 0x0 0
ID_AA64PFR7_EL1_RESERVED 0x0 0
(gdb)

This seems to be MPAM_frac, and it's 0, so "MPAM Extension not implemented"[1].

Thanks,

[1] https://developer.arm.com/documentation/ddi0595/2021-06/AArch64-Registers/ID-AA64PFR1-EL1--AArch64-Processor-Feature-Register-1?lang=en#fieldset_0-19_16

>
> --
> Thanks,
> Oliver