On Wed, Dec 04, 2024 at 04:57:54PM +0100, Mauro Carvalho Chehab wrote: > This series was part of the previous PR to add generic error injection > support on GHES. It depends on a cleanup patch series sent earlier > today: > > > https://lore.kernel.org/qemu-devel/cover.1733297707.git.mchehab+hua...@kernel.org/T/#t > > It contains the changes of the math used to calculate offsets at HEST table > and hardware_error firmware file. It prepares for the addition of GHES > error injection. > > The first patch was previously at the cleanup series. It prepares > the logic to support multiple sources. > > The second patch adds a new firmware file to store HEST address. > > The third patch use the new firmware to calculate offsets using > HEST table. > > Patches 4 and 5 add migration support. They assume that this > series will be merged for qemu 9.2 (maybe it is too late for that, > as QEMU is now on soft freeze). > > I tested migration using both virt-9.1 and virt-9.2 machines > on qemu 9.2.
So this needs a rebase to the next release. Thanks! > I also tested migration with: > > qemu-9.1 -M virt-9.1 -cpu cortex-a57 => qemu-9.2 -M virt-9.1 -cpu > cortex-a57 > qemu-9.2 -M virt-9.1 -cpu cortex-a57 => qemu-9.1 -M virt-9.1 -cpu > cortex-a57 > > The full qemu command when test backward-compatibility when running virt-9.1 > is: > > > ~/qemu/build/qemu-system-aarch64 \ > -m 4g,maxmem=8G,slots=8 -monitor stdio -no-reboot -bios > ~/emulator/QEMU_EFI-silent.fd > -kernel~/kernel/arm64_build/arch/arm64/boot/Image.gz -device > pcie-root-port,id=root_port1 -device virtio-blk-pci,drive=hd -device > virtio-net-pci,netdev=mynet,id=bob -drive > if=none,file=~/emulator/debian.qcow2,format=qcow2,id=hd -object > memory-backend-ram,size=4G,id=mem0 -netdev > type=user,id=mynet,hostfwd=tcp::5555-:22 -qmp > tcp:localhost:4445,server=on,wait=off -M > virt-9.1,nvdimm=on,gic-version=3,ras=on -cpu max -smp 4 -numa > node,nodeid=0,cpus=0-3,memdev=mem0 -append 'earlycon nomodeset root=/dev/vda1 > fsck.mode=skip tp_printk maxcpus=4' > > (I actually call it from two different directories, one with qemu-9.1 and the > other one with qemu-9.2. > > For tests on qemu-9.2 with virt-9.2, I used a similar command: > > ~/qemu/build/qemu-system-aarch64 -m 4g,maxmem=8G,slots=8 -monitor stdio > -no-reboot -bios ~/emulator/QEMU_EFI-silent.fd -kernel > ~/kernel/arm64_build/arch/arm64/boot/Image.gz -device > pcie-root-port,id=root_port1 -device virtio-blk-pci,drive=hd -device > virtio-net-pci,netdev=mynet,id=bob -drive > if=none,file=~/emulator/debian.qcow2,format=qcow2,id=hd -object > memory-backend-ram,size=4G,id=mem0 -netdev > type=user,id=mynet,hostfwd=tcp::5555-:22 -qmp > tcp:localhost:4445,server=on,wait=off -M > virt-9.2,nvdimm=on,gic-version=3,ras=on -cpu max -smp 4 -numa > node,nodeid=0,cpus=0-3,memdev=mem0 -append 'earlycon nomodeset root=/dev/vda1 > fsck.mode=skip tp_printk maxcpus=4' > > --- > > v3: did some minor cleanups at the code, as suggested by Jonathan Cameron. > > v2: > - some whitespace and comment changes > - patch 3/6 (acpi/ghes: rename the function which gets hw error offsets) > was merged on the cleanup series. > > Mauro Carvalho Chehab (5): > acpi/ghes: Prepare to support multiple sources on ghes > acpi/ghes: add a firmware file with HEST address > acpi/ghes: Use HEST table offsets when preparing GHES records > acpi/generic_event_device: Update GHES migration to cover hest addr > acpi/generic_event_device: add logic to detect if HEST addr is > available > > hw/acpi/generic_event_device.c | 30 +++++++ > hw/acpi/ghes.c | 160 +++++++++++++++++++++++++++++---- > hw/arm/virt-acpi-build.c | 33 ++++++- > hw/core/machine.c | 2 + > include/hw/acpi/ghes.h | 23 +++-- > 5 files changed, 220 insertions(+), 28 deletions(-) > > -- > 2.47.1 >