History log of /openbmc/qemu/docs/ (Results 151 – 175 of 3052)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
0418f90822-May-2024 Anthony Harivel <aharivel@redhat.com>

Add support for RAPL MSRs in KVM/Qemu

Starting with the "Sandy Bridge" generation, Intel CPUs provide a RAPL
interface (Running Average Power Limit) for advertising the accumulated
energy consumptio

Add support for RAPL MSRs in KVM/Qemu

Starting with the "Sandy Bridge" generation, Intel CPUs provide a RAPL
interface (Running Average Power Limit) for advertising the accumulated
energy consumption of various power domains (e.g. CPU packages, DRAM,
etc.).

The consumption is reported via MSRs (model specific registers) like
MSR_PKG_ENERGY_STATUS for the CPU package power domain. These MSRs are
64 bits registers that represent the accumulated energy consumption in
micro Joules. They are updated by microcode every ~1ms.

For now, KVM always returns 0 when the guest requests the value of
these MSRs. Use the KVM MSR filtering mechanism to allow QEMU handle
these MSRs dynamically in userspace.

To limit the amount of system calls for every MSR call, create a new
thread in QEMU that updates the "virtual" MSR values asynchronously.

Each vCPU has its own vMSR to reflect the independence of vCPUs. The
thread updates the vMSR values with the ratio of energy consumed of
the whole physical CPU package the vCPU thread runs on and the
thread's utime and stime values.

All other non-vCPU threads are also taken into account. Their energy
consumption is evenly distributed among all vCPUs threads running on
the same physical CPU package.

To overcome the problem that reading the RAPL MSR requires priviliged
access, a socket communication between QEMU and the qemu-vmsr-helper is
mandatory. You can specified the socket path in the parameter.

This feature is activated with -accel kvm,rapl=true,path=/path/sock.sock

Actual limitation:
- Works only on Intel host CPU because AMD CPUs are using different MSR
adresses.

- Only the Package Power-Plane (MSR_PKG_ENERGY_STATUS) is reported at
the moment.

Signed-off-by: Anthony Harivel <aharivel@redhat.com>
Link: https://lore.kernel.org/r/20240522153453.1230389-4-aharivel@redhat.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

84369d7622-May-2024 Anthony Harivel <aharivel@redhat.com>

tools: build qemu-vmsr-helper

Introduce a privileged helper to access RAPL MSR.

The privileged helper tool, qemu-vmsr-helper, is designed to provide
virtual machines with the ability to read specif

tools: build qemu-vmsr-helper

Introduce a privileged helper to access RAPL MSR.

The privileged helper tool, qemu-vmsr-helper, is designed to provide
virtual machines with the ability to read specific RAPL (Running Average
Power Limit) MSRs without requiring CAP_SYS_RAWIO privileges or relying
on external, out-of-tree patches.

The helper tool leverages Unix permissions and SO_PEERCRED socket
options to enforce access control, ensuring that only processes
explicitly requesting read access via readmsr() from a valid Thread ID
can access these MSRs.

The list of RAPL MSRs that are allowed to be read by the helper tool is
defined in rapl-msr-index.h. This list corresponds to the RAPL MSRs that
will be supported in the next commit titled "Add support for RAPL MSRs
in KVM/QEMU."

The tool is intentionally designed to run on the Linux x86 platform.
This initial implementation is tailored for Intel CPUs but can be
extended to support AMD CPUs in the future.

Signed-off-by: Anthony Harivel <aharivel@redhat.com>
Link: https://lore.kernel.org/r/20240522153453.1230389-3-aharivel@redhat.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

58fc249d18-Jul-2024 Simon Hamelin <simon.hamelin@grenoble-inp.org>

plugins/stoptrigger: TCG plugin to stop execution under conditions

This new plugin allows to stop emulation using conditions on the
emulation state. By setting this plugin arguments, it is possible

plugins/stoptrigger: TCG plugin to stop execution under conditions

This new plugin allows to stop emulation using conditions on the
emulation state. By setting this plugin arguments, it is possible
to set an instruction count limit and/or trigger address(es) to stop at.
The code returned at emulation exit can be customized.

This plugin demonstrates how someone could stop QEMU execution.
It could be used for research purposes to launch some code and
deterministically stop it and understand where its execution flow went.

Co-authored-by: Alexandre Iooss <erdnaxe@crans.org>
Signed-off-by: Simon Hamelin <simon.hamelin@grenoble-inp.org>
Signed-off-by: Alexandre Iooss <erdnaxe@crans.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20240715081521.19122-2-simon.hamelin@grenoble-inp.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240718094523.1198645-5-alex.bennee@linaro.org>

show more ...

056b779e17-Jul-2024 Cédric Le Goater <clg@kaod.org>

aspeed: Introduce a 'boot-emmc' machine option

The default behavior of some Aspeed machines is to boot from the eMMC
device, like the rainier-bmc. Others like ast2600-evb could also boot
from eMMC i

aspeed: Introduce a 'boot-emmc' machine option

The default behavior of some Aspeed machines is to boot from the eMMC
device, like the rainier-bmc. Others like ast2600-evb could also boot
from eMMC if the HW strapping boot-from-eMMC bit was set. Add a
property to set or unset this bit. This is useful to test boot images.

For now, only activate this property on the ast2600-evb and rainier-bmc
machines for which eMMC images are available or can be built.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Tested-by: Andrew Jeffery <andrew@codeconstruct.com.au>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>

show more ...

ce22616118-Jul-2024 Thomas Lamprecht <t.lamprecht@proxmox.com>

guest-agent: document allow-rpcs in config file section

While the `allow-rpcs` option is documented in the CLI options
section, it was missing in the section about the configuration file
syntax.

An

guest-agent: document allow-rpcs in config file section

While the `allow-rpcs` option is documented in the CLI options
section, it was missing in the section about the configuration file
syntax.

And while it's mentioned that "the list of keys follows the command line
options", having `block-rpcs` there but not `allow-rpcs` seems like
being a potential source of confusion; and as it's cheap to add let's
just do so.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
Message-ID: <20240718140407.444160-1-t.lamprecht@proxmox.com>
Signed-off-by: Konstantin Kostiuk <kkostiuk@redhat.com>

show more ...

2e3b166c12-Jul-2024 Daniel P. Berrangé <berrange@redhat.com>

qga: centralize logic for disabling/enabling commands

It is confusing having many different pieces of code enabling and
disabling commands, and it is not clear that they all have the same
semantics,

qga: centralize logic for disabling/enabling commands

It is confusing having many different pieces of code enabling and
disabling commands, and it is not clear that they all have the same
semantics, especially wrt prioritization of the block/allow lists.
The code attempted to prevent the user from setting both the block
and allow lists concurrently, however, the logic was flawed as it
checked settings in the configuration file separately from the
command line arguments. Thus it was possible to set a block list
in the config file and an allow list via a command line argument.
The --dump-conf option also creates a configuration file with both
keys present, even if unset, which means it is creating a config
that cannot actually be loaded again.

Centralizing the code in a single method "ga_apply_command_filters"
will provide a strong guarantee of consistency and clarify the
intended behaviour. With this there is no compelling technical
reason to prevent concurrent setting of both the allow and block
lists, so this flawed restriction is removed.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
Message-ID: <20240712132459.3974109-23-berrange@redhat.com>
Signed-off-by: Konstantin Kostiuk <kkostiuk@redhat.com>

show more ...

f8bf234712-Jul-2024 Daniel P. Berrangé <berrange@redhat.com>

qga: allow configuration file path via the cli

Allowing the user to set the QGA_CONF environment variable to change
the default configuration file path is very unusual practice, made
more obscure si

qga: allow configuration file path via the cli

Allowing the user to set the QGA_CONF environment variable to change
the default configuration file path is very unusual practice, made
more obscure since this ability is not documented.

This introduces the more normal '-c PATH' / '--config=PATH' command
line argument approach. This requires that we parse the comamnd line
twice, since we want the command line arguments to take priority over
the configuration file settings in general.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
Message-ID: <20240712132459.3974109-22-berrange@redhat.com>
Signed-off-by: Konstantin Kostiuk <kkostiuk@redhat.com>

show more ...

0d9f101618-Jul-2024 Richard Henderson <richard.henderson@linaro.org>

Merge tag 'pull-riscv-to-apply-20240718-1' of https://github.com/alistair23/qemu into staging

RISC-V PR for 9.1

* Support the zimop, zcmop, zama16b and zabha extensions
* Validate the mode when set

Merge tag 'pull-riscv-to-apply-20240718-1' of https://github.com/alistair23/qemu into staging

RISC-V PR for 9.1

* Support the zimop, zcmop, zama16b and zabha extensions
* Validate the mode when setting vstvec CSR
* Add decode support for Zawrs extension
* Update the KVM regs to Linux 6.10-rc5
* Add smcntrpmf extension support
* Raise an exception when CSRRS/CSRRC writes a read-only CSR
* Re-insert and deprecate 'riscv,delegate' in virt machine device tree
* roms/opensbi: Update to v1.5

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEaukCtqfKh31tZZKWr3yVEwxTgBMFAmaYeUcACgkQr3yVEwxT
# gBMtdw//U2NbmnmECa0uXuE7fdFul0tUkl2oHb9Cr8g5Se5g/HVFqexAKOFZ8Lcm
# DvTl94zJ2dms4RntcmJHwTIusa+oU6qqOekediotjgpeH4BHZNCOHe0E9hIAHn9F
# uoJ1P186L7VeVr7OFAAgSCE7F6egCk7iC0h8L8/vuL4xcuyfbZ2r7ybiTl1+45N2
# YBBv5/00wsYnyMeqRYYtyqgX9QR017JRqNSfTJSbKxhQM/L1GA1xxisUvIGeyDqc
# Pn8E3dMN6sscR6bPs4RP+SBi0JIlRCgth/jteSUkbYf42osw3/5sl4oK/e6Xiogo
# SjELOF7QJNxE8H6EUIScDaCVB5ZhvELZcuOL2NRdUuVDkjhWXM633HwfEcXkZdFK
# W/H9wOvNxPAJIOGXOpv10+MLmhdyIOZwE0uk6evHvdcTn3FP9DurdUCc1se0zKOA
# Qg/H6usTbLGNQ7KKTNQ6GpQ6u89iE1CIyZqYVvB1YuF5t7vtAmxvNk3SVZ6aq3VL
# lPJW2Zd1eO09Q+kRnBVDV7MV4OJrRNsU+ryd91NrSVo9aLADtyiNC28dCSkjU3Gn
# 6YQZt65zHuhH5IBB/PGIPo7dLRT8KNWOiYVoy3c6p6DC6oXsKIibh0ue1nrVnnVQ
# NRqyxPYaj6P8zzqwTk+iJj36UXZZVtqPIhtRu9MrO6Opl2AbsXI=
# =pM6B
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 18 Jul 2024 12:09:11 PM AEST
# gpg: using RSA key 6AE902B6A7CA877D6D659296AF7C95130C538013
# gpg: Good signature from "Alistair Francis <alistair@alistair23.me>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 6AE9 02B6 A7CA 877D 6D65 9296 AF7C 9513 0C53 8013

* tag 'pull-riscv-to-apply-20240718-1' of https://github.com/alistair23/qemu: (30 commits)
roms/opensbi: Update to v1.5
hw/riscv/virt.c: re-insert and deprecate 'riscv,delegate'
target/riscv: raise an exception when CSRRS/CSRRC writes a read-only CSR
target/riscv: Expose the Smcntrpmf config
target/riscv: Do not setup pmu timer if OF is disabled
target/riscv: More accurately model priv mode filtering.
target/riscv: Start counters from both mhpmcounter and mcountinhibit
target/riscv: Enforce WARL behavior for scounteren/hcounteren
target/riscv: Save counter values during countinhibit update
target/riscv: Implement privilege mode filtering for cycle/instret
target/riscv: Only set INH fields if priv mode is available
target/riscv: Add cycle & instret privilege mode filtering support
target/riscv: Add cycle & instret privilege mode filtering definitions
target/riscv: Add cycle & instret privilege mode filtering properties
target/riscv: Fix the predicate functions for mhpmeventhX CSRs
target/riscv: Combine set_mode and set_virt functions.
target/riscv/kvm: update KVM regs to Linux 6.10-rc5
disas/riscv: Add decode for Zawrs extension
target/riscv: Validate the mode in write_vstvec
disas/riscv: Support zabha disassemble
...

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/README.rst
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/backends/hostmem-epc.c
/openbmc/qemu/backends/iommufd.c
/openbmc/qemu/backends/rng-random.c
/openbmc/qemu/block/curl.c
/openbmc/qemu/chardev/char-io.c
/openbmc/qemu/cpu-common.c
/openbmc/qemu/disas/riscv.c
about/deprecated.rst
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/sgx.c
/openbmc/qemu/hw/i386/x86.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/usb/host-libusb.c
/openbmc/qemu/hw/usb/u2f-passthru.c
/openbmc/qemu/hw/vfio/container.c
/openbmc/qemu/include/disas/capstone.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/qemu/timer.h
/openbmc/qemu/pc-bios/opensbi-riscv32-generic-fw_dynamic.bin
/openbmc/qemu/pc-bios/opensbi-riscv64-generic-fw_dynamic.bin
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/roms/opensbi
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/target/hexagon/imported/mmvec/ext.idef
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/sev.c
/openbmc/qemu/target/i386/tcg/decode-new.c.inc
/openbmc/qemu/target/i386/tcg/emit.c.inc
/openbmc/qemu/target/i386/tcg/seg_helper.c
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu.h
/openbmc/qemu/target/riscv/cpu_bits.h
/openbmc/qemu/target/riscv/cpu_cfg.h
/openbmc/qemu/target/riscv/cpu_helper.c
/openbmc/qemu/target/riscv/csr.c
/openbmc/qemu/target/riscv/insn16.decode
/openbmc/qemu/target/riscv/insn32.decode
/openbmc/qemu/target/riscv/insn_trans/trans_rva.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvd.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvf.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvi.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzabha.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzacas.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzcmop.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzimop.c.inc
/openbmc/qemu/target/riscv/kvm/kvm-cpu.c
/openbmc/qemu/target/riscv/machine.c
/openbmc/qemu/target/riscv/op_helper.c
/openbmc/qemu/target/riscv/pmu.c
/openbmc/qemu/target/riscv/pmu.h
/openbmc/qemu/target/riscv/tcg/tcg-cpu.c
/openbmc/qemu/target/riscv/translate.c
/openbmc/qemu/util/oslib-posix.c
38facfa815-Jul-2024 Daniel Henrique Barboza <dbarboza@ventanamicro.com>

hw/riscv/virt.c: re-insert and deprecate 'riscv,delegate'

Commit b1f1e9dcfa renamed 'riscv,delegate' to 'riscv,delegation' since
it is the correct name as per dt-bindings, and the absence of the
cor

hw/riscv/virt.c: re-insert and deprecate 'riscv,delegate'

Commit b1f1e9dcfa renamed 'riscv,delegate' to 'riscv,delegation' since
it is the correct name as per dt-bindings, and the absence of the
correct name will result in validation fails when dumping the dtb and
using dt-validate.

But this change has a side-effect: every other firmware available that
is AIA capable is using 'riscv,delegate', and it will fault/misbehave if
this property isn't present. The property was added back in QEMU 7.0,
meaning we have 2 years of firmware development using the wrong
property.

Re-introducing 'riscv,delegate' while keeping 'riscv,delegation' allows
older firmwares to keep booting with the 'virt' machine.
'riscv,delegate' is then marked for future deprecation with its use
being discouraged from now on.

Cc: Conor Dooley <conor@kernel.org>
Cc: Anup Patel <apatel@ventanamicro.com>
Fixes: b1f1e9dcfa ("hw/riscv/virt.c: aplic DT: rename prop to 'riscv, delegation'")
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20240715090455.145888-1-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/chardev/char-io.c
/openbmc/qemu/configs/targets/loongarch64-softmmu.mak
/openbmc/qemu/cpu-common.c
/openbmc/qemu/disas/riscv.c
about/deprecated.rst
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/display/ati.c
/openbmc/qemu/hw/display/qxl-render.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/display/vmware_vga.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/isa/vt82c686.c
/openbmc/qemu/hw/loongarch/Kconfig
/openbmc/qemu/hw/loongarch/acpi-build.c
/openbmc/qemu/hw/loongarch/boot.c
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/mips/fuloong2e.c
/openbmc/qemu/hw/ppc/amigaone.c
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/scsi/esp.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/trace-events
/openbmc/qemu/hw/timer/hpet.c
/openbmc/qemu/hw/ufs/ufs.c
/openbmc/qemu/hw/xen/xen-mapcache.c
/openbmc/qemu/include/disas/capstone.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/loader.h
/openbmc/qemu/include/hw/qdev-core.h
/openbmc/qemu/include/hw/sd/sd.h
/openbmc/qemu/include/qemu/timer.h
/openbmc/qemu/include/ui/console.h
/openbmc/qemu/meson.build
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/system/cpus.c
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/sev.c
/openbmc/qemu/target/i386/tcg/decode-new.c.inc
/openbmc/qemu/target/i386/tcg/emit.c.inc
/openbmc/qemu/target/i386/tcg/seg_helper.c
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/kvm/kvm.c
/openbmc/qemu/target/loongarch/tcg/insn_trans/trans_shift.c.inc
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu.h
/openbmc/qemu/target/riscv/cpu_bits.h
/openbmc/qemu/target/riscv/cpu_cfg.h
/openbmc/qemu/target/riscv/cpu_helper.c
/openbmc/qemu/target/riscv/csr.c
/openbmc/qemu/target/riscv/insn16.decode
/openbmc/qemu/target/riscv/insn32.decode
/openbmc/qemu/target/riscv/insn_trans/trans_rva.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvd.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvf.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvi.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzabha.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzacas.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzcmop.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzimop.c.inc
/openbmc/qemu/target/riscv/kvm/kvm-cpu.c
/openbmc/qemu/target/riscv/machine.c
/openbmc/qemu/target/riscv/op_helper.c
/openbmc/qemu/target/riscv/pmu.c
/openbmc/qemu/target/riscv/pmu.h
/openbmc/qemu/target/riscv/tcg/tcg-cpu.c
/openbmc/qemu/target/riscv/translate.c
/openbmc/qemu/target/tricore/cpu.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/dbus-listener.c
/openbmc/qemu/ui/gtk.c
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/ui/spice-display.c
/openbmc/qemu/ui/vnc.c
3c5f611416-Jul-2024 John Snow <jsnow@redhat.com>

qapi: remove "Example" doc section

Fully eliminate the "Example" sections in QAPI doc blocks now that they
have all been converted to arbitrary rST syntax using the
".. qmp-example::" directive. Upd

qapi: remove "Example" doc section

Fully eliminate the "Example" sections in QAPI doc blocks now that they
have all been converted to arbitrary rST syntax using the
".. qmp-example::" directive. Update tests to match.

Migrating to the new syntax
---------------------------

The old "Example:" or "Examples:" section syntax is now caught as an
error, but "Example::" is stil permitted as explicit rST syntax for an
un-lexed, generic preformatted text block.

('Example' is not special in this case, any sentence that ends with "::"
will start an indented code block in rST.)

Arbitrary rST for Examples is now possible, but it's strongly
recommended that documentation authors use the ".. qmp-example::"
directive for consistent visual formatting in rendered HTML docs. The
":title:" directive option may be used to add extra information into the
title bar for the example. The ":annotated:" option can be used to write
arbitrary rST instead, with nested "::" blocks applying QMP formatting
where desired.

Other choices available are ".. code-block:: QMP" which will not create
an "Example:" box, or the short-form "::" code-block syntax which will
not apply QMP highlighting when used outside of the qmp-example
directive.

Why?
----

This patch has several benefits:

1. Example sections can now be written more arbitrarily, mixing
explanatory paragraphs and code blocks however desired.

2. Example sections can now use fully arbitrary rST.

3. All code blocks are now lexed and validated as QMP; increasing
usability of the docs and ensuring validity of example snippets.

(To some extent - This patch only gaurantees it lexes correctly, not
that it's valid under the JSON or QMP grammars. It will catch most
small mistakes, however.)

4. Each qmp-example can be titled or annotated independently without
bypassing the QMP lexer/validator.

(i.e. code blocks are now for *code* only, so we don't have to
sacrifice exposition for having lexically valid examples.)

NOTE: As with the "Notes" conversion (d461c279737), this patch (and the
three preceding) may change the rendering order for Examples in
the current generator. The forthcoming qapidoc rewrite will fix
this by always generating documentation in source order.

Signed-off-by: John Snow <jsnow@redhat.com>
Message-ID: <20240717021312.606116-10-jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

e597a73a16-Jul-2024 Harmonie Snow <harmonie@gmail.com>

docs/sphinx: add CSS styling for qmp-example directive

Add CSS styling for qmp-example directives to increase readability and
consistently style all example blocks.

Signed-off-by: Harmonie Snow <ha

docs/sphinx: add CSS styling for qmp-example directive

Add CSS styling for qmp-example directives to increase readability and
consistently style all example blocks.

Signed-off-by: Harmonie Snow <harmonie@gmail.com>
Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240717021312.606116-6-jsnow@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

76e375fc16-Jul-2024 John Snow <jsnow@redhat.com>

docs/qapidoc: add QMP highlighting to annotated qmp-example blocks

For any code literal blocks inside of a qmp-example directive, apply and
enforce the QMP lexer/highlighter to those blocks.

This w

docs/qapidoc: add QMP highlighting to annotated qmp-example blocks

For any code literal blocks inside of a qmp-example directive, apply and
enforce the QMP lexer/highlighter to those blocks.

This way, you won't need to write:

```
.. qmp-example::
:annotated:

Blah blah

.. code-block:: QMP

-> { "lorem": "ipsum" }
```

But instead, simply:

```
.. qmp-example::
:annotated:

Blah blah::

-> { "lorem": "ipsum" }
```

Once the directive block is exited, whatever the previous default
highlight language was will be restored; localizing the forced QMP
lexing to exclusively this directive.

Note, if the default language is *already* QMP, this directive will not
generate and restore redundant highlight configuration nodes. We may
well decide that the default language ought to be QMP for any QAPI
reference pages, but this way the directive behaves consistently no
matter where it is used.

Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240717021312.606116-5-jsnow@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

547864f916-Jul-2024 John Snow <jsnow@redhat.com>

docs/qapidoc: create qmp-example directive

This is a directive that creates a syntactic sugar for creating
"Example" boxes very similar to the ones already used in the bitmaps.rst
document, please s

docs/qapidoc: create qmp-example directive

This is a directive that creates a syntactic sugar for creating
"Example" boxes very similar to the ones already used in the bitmaps.rst
document, please see e.g.
https://www.qemu.org/docs/master/interop/bitmaps.html#creation-block-dirty-bitmap-add

In its simplest form, when a custom title is not needed or wanted, and
the example body is *solely* a QMP example:

```
.. qmp-example::

{body}
```

is syntactic sugar for:

```
.. admonition:: Example:

.. code-block:: QMP

{body}
```

When a custom, plaintext title that describes the example is desired,
this form:

```
.. qmp-example::
:title: Defrobnification

{body}
```

Is syntactic sugar for:

```
.. admonition:: Example: Defrobnification

.. code-block:: QMP

{body}
```

Lastly, when Examples are multi-step processes that require non-QMP
exposition, have lengthy titles, or otherwise involve prose with rST
markup (lists, cross-references, etc), the most complex form:

```
.. qmp-example::
:annotated:

This example shows how to use `foo-command`::

{body}

For more information, please see `frobnozz`.
```

Is desugared to:

```
.. admonition:: Example:

This example shows how to use `foo-command`::

{body}

For more information, please see `frobnozz`.
```

Note that :annotated: and :title: options can be combined together, if
desired.

The primary benefit here being documentation source consistently using
the same directive for all forms of examples to ensure consistent visual
styling, and ensuring all relevant prose is visually grouped alongside
the code literal block.

Note that as of this commit, the code-block rST syntax "::" does not
apply QMP highlighting; you would need to use ".. code-block:: QMP". The
very next commit changes this behavior to assume all "::" code blocks
within this directive are QMP blocks.

Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240717021312.606116-4-jsnow@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

a7d07ccd16-Jul-2024 John Snow <jsnow@redhat.com>

docs/qapidoc: factor out do_parse()

Factor out the compatibility parser helper into a base class, so it can
be shared by other directives.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: M

docs/qapidoc: factor out do_parse()

Factor out the compatibility parser helper into a base class, so it can
be shared by other directives.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240717021312.606116-3-jsnow@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

dd23f9ec03-Jul-2024 John Snow <jsnow@redhat.com>

docs: remove Sphinx 1.x compatibility code

In general, the Use_SSI workaround is no longer needed, and neither is
the pre-1.6 logging shim for kerneldoc.

Signed-off-by: John Snow <jsnow@redhat.com>

docs: remove Sphinx 1.x compatibility code

In general, the Use_SSI workaround is no longer needed, and neither is
the pre-1.6 logging shim for kerneldoc.

Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 20240703175235.239004-3-jsnow@redhat.com
[rebased on top of origin/master. --js]
Signed-off-by: John Snow <jsnow@redhat.com>

show more ...

fe791b7f03-Jul-2024 John Snow <jsnow@redhat.com>

Python: bump minimum sphinx version to 3.4.3

With RHEL 8 support retired (It's been two years since RHEL9 released),
our very oldest build platform version of Sphinx is now 3.4.3; and
keeping backwa

Python: bump minimum sphinx version to 3.4.3

With RHEL 8 support retired (It's been two years since RHEL9 released),
our very oldest build platform version of Sphinx is now 3.4.3; and
keeping backwards compatibility for versions as old as v1.6 when using
domain extensions is a lot of work we don't need to do.

This patch is motivated by my work creating a new QAPI domain, which
unlike the dbus documentation, cannot be allowed to regress by creating
a "dummy" doc when operating under older sphinx versions. Easier is to
raise our minimum version as far as we can push it forwards, reducing my
burden in creating cross-compatibility hacks and patches.

A sampling of sphinx versions from various distributions, courtesy
https://repology.org/project/python:sphinx/versions

Alpine 3.16: v4.3.0 (QEMU support ended 2024-05-23)
Alpine 3.17: v5.3.0
Alpine 3.18: v6.1.3
Alpine 3.19: v6.2.1
Ubuntu 20.04 LTS: EOL
Ubuntu 22.04 LTS: v4.3.2
Ubuntu 22.10: EOL
Ubuntu 23.04: EOL
Ubuntu 23.10: v5.3.0
Ubuntu 24.04 LTS: v7.2.6
Debian 11: v3.4.3 (QEMU support ends 2024-07-xx)
Debian 12: v5.3.0
Fedora 38: EOL
Fedora 39: v6.2.1
Fedora 40: v7.2.6
CentOS Stream 8: v1.7.6 (QEMU support ended 2024-05-17)
CentOS Stream 9: v3.4.3
OpenSUSE Leap 15.4: EOL
OpenSUSE Leap 15.5: 2.3.1, 4.2.0 and 7.2.6

RHEL9 / CentOS Stream 9 becomes the new defining factor in staying at
Sphinx 3.4.3 due to downstream offline build requirements that force us
to use platform Sphinx instead of newer packages from PyPI.

Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 20240703175235.239004-2-jsnow@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>

show more ...


/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/block/io.c
conf.py
/openbmc/qemu/hw/arm/aspeed_ast27x0.c
/openbmc/qemu/hw/arm/stm32l4x5_soc.c
/openbmc/qemu/hw/block/m25p80.c
/openbmc/qemu/hw/char/pl011.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/misc/bcm2835_thermal.c
/openbmc/qemu/hw/misc/stm32l4x5_exti.c
/openbmc/qemu/hw/net/ftgmac100.c
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/nvme/nvme.h
/openbmc/qemu/hw/nvme/subsys.c
/openbmc/qemu/hw/sd/core.c
/openbmc/qemu/hw/sd/npcm7xx_sdhci.c
/openbmc/qemu/hw/sd/sd.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sd/sdmmc-internal.h
/openbmc/qemu/hw/sd/trace-events
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/container-base.c
/openbmc/qemu/hw/vfio/container.c
/openbmc/qemu/hw/vfio/display.c
/openbmc/qemu/hw/vfio/iommufd.c
/openbmc/qemu/hw/virtio/trace-events
/openbmc/qemu/hw/virtio/virtio-iommu.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/include/block/nvme.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/hw/core/tcg-cpu-ops.h
/openbmc/qemu/include/hw/misc/stm32l4x5_exti.h
/openbmc/qemu/include/hw/net/ftgmac100.h
/openbmc/qemu/include/hw/sd/sd.h
/openbmc/qemu/include/hw/vfio/vfio-container-base.h
/openbmc/qemu/include/sysemu/host_iommu_device.h
/openbmc/qemu/python/qemu/machine/machine.py
/openbmc/qemu/python/qemu/utils/qemu_ga_client.py
/openbmc/qemu/python/setup.cfg
/openbmc/qemu/pythondeps.toml
/openbmc/qemu/system/memory.c
/openbmc/qemu/target/alpha/cpu.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/machine.c
/openbmc/qemu/target/arm/tcg/a64.decode
/openbmc/qemu/target/arm/tcg/cpu-v7m.c
/openbmc/qemu/target/arm/tcg/mve_helper.c
/openbmc/qemu/target/arm/tcg/translate-a32.h
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-m-nocp.c
/openbmc/qemu/target/arm/tcg/translate-vfp.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/arm/vfp_helper.c
/openbmc/qemu/target/avr/cpu.c
/openbmc/qemu/target/cris/cpu.c
/openbmc/qemu/target/hppa/cpu.c
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/m68k/cpu.c
/openbmc/qemu/target/microblaze/cpu.c
/openbmc/qemu/target/mips/cpu.c
/openbmc/qemu/target/openrisc/cpu.c
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/internals.h
/openbmc/qemu/target/riscv/tcg/tcg-cpu.c
/openbmc/qemu/target/rx/cpu.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/sh4/cpu.c
/openbmc/qemu/target/sparc/cpu.c
/openbmc/qemu/target/tricore/cpu.c
/openbmc/qemu/target/xtensa/cpu.c
/openbmc/qemu/tests/avocado/machine_aspeed.py
/openbmc/qemu/tests/docker/dockerfiles/python.docker
/openbmc/qemu/tests/qemu-iotests/245
/openbmc/qemu/tests/qemu-iotests/testenv.py
/openbmc/qemu/tests/qemu-iotests/testrunner.py
/openbmc/qemu/tests/qemu-iotests/tests/write-zeroes-unmap
/openbmc/qemu/tests/qemu-iotests/tests/write-zeroes-unmap.out
/openbmc/qemu/tests/qtest/libqos/sdhci-cmd.h
/openbmc/qemu/tests/qtest/npcm7xx_sdhci-test.c
e389929d28-Jun-2024 Markus Armbruster <armbru@redhat.com>

sphinx/qapidoc: Fix to generate doc for explicit, unboxed arguments

When a command's arguments are specified as an explicit type T,
generated documentation points to the members of T.

Example:

sphinx/qapidoc: Fix to generate doc for explicit, unboxed arguments

When a command's arguments are specified as an explicit type T,
generated documentation points to the members of T.

Example:

##
# @announce-self:
#
# Trigger generation of broadcast RARP frames to update network
[...]
##
{ 'command': 'announce-self', 'boxed': true,
'data' : 'AnnounceParameters'}

generates

"announce-self" (Command)
-------------------------

Trigger generation of broadcast RARP frames to update network
[...]

Arguments
~~~~~~~~~

The members of "AnnounceParameters"

Except when the command takes its arguments unboxed , i.e. it doesn't
have 'boxed': true, we generate *nothing*. A few commands have a
reference in their doc comment to compensate, but most don't.

Example:

##
# @blockdev-snapshot-sync:
#
# Takes a synchronous snapshot of a block device.
#
# For the arguments, see the documentation of BlockdevSnapshotSync.
[...]
##
{ 'command': 'blockdev-snapshot-sync',
'data': 'BlockdevSnapshotSync',
'allow-preconfig': true }

generates

"blockdev-snapshot-sync" (Command)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Takes a synchronous snapshot of a block device.

For the arguments, see the documentation of BlockdevSnapshotSync.
[...]

Same for event data.

Fix qapidoc.py to generate the reference regardless of boxing. Delete
now redundant references in the doc comments.

Fixes: 4078ee5469e5 (docs/sphinx: Add new qapi-doc Sphinx extension)
Cc: qemu-stable@nongnu.org
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240628112756.794237-1-armbru@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>

show more ...

d461c27926-Jun-2024 John Snow <jsnow@redhat.com>

qapi: convert "Note" sections to plain rST

We do not need a dedicated section for notes. By eliminating a specially
parsed section, these notes can be treated as normal rST paragraphs in
the new QMP

qapi: convert "Note" sections to plain rST

We do not need a dedicated section for notes. By eliminating a specially
parsed section, these notes can be treated as normal rST paragraphs in
the new QMP reference manual, and can be placed and styled much more
flexibly.

Convert all existing "Note" and "Notes" sections to pure rST. As part of
the conversion, capitalize the first letter of each sentence and add
trailing punctuation where appropriate to ensure notes look sensible and
consistent in rendered HTML documentation. Markup is also re-aligned to
the de-facto standard of 3 spaces for directives.

Update docs/devel/qapi-code-gen.rst to reflect the new paradigm, and
update the QAPI parser to prohibit "Note" sections while suggesting a
new syntax. The exact formatting to use is a matter of taste, but a good
candidate is simply:

.. note:: lorem ipsum ...
... dolor sit amet ...
... consectetur adipiscing elit ...

... but there are other choices, too. The Sphinx readthedocs theme
offers theming for the following forms (capitalization unimportant); all
are adorned with a (!) symbol () in the title bar for rendered HTML
docs.

See
https://sphinx-rtd-theme.readthedocs.io/en/stable/demo/demo.html#admonitions
for examples of each directive/admonition in use.

These are rendered in orange:

.. Attention:: ...
.. Caution:: ...
.. WARNING:: ...

These are rendered in red:

.. DANGER:: ...
.. Error:: ...

These are rendered in green:

.. Hint:: ...
.. Important:: ...
.. Tip:: ...

These are rendered in blue:

.. Note:: ...
.. admonition:: custom title

admonition body text

This patch uses ".. note::" almost everywhere, with just two "caution"
directives. Several instances of "Notes:" have been converted to
merely ".. note::", or multiple ".. note::" where appropriate.
".. admonition:: notes" is used in a few places where we had an
ordered list of multiple notes that would not make sense as
standalone/separate admonitions. Two "Note:" following "Example:"
have been turned into ordinary paragraphs within the example.

NOTE: Because qapidoc.py does not attempt to preserve source ordering of
sections, the conversion of Notes from a "tagged section" to an
"untagged section" means that rendering order for some notes *may
change* as a result of this patch. The forthcoming qapidoc.py rewrite
strictly preserves source ordering in the rendered documentation, so
this issue will be rectified in the new generator.

Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com> [for block*.json]
Message-ID: <20240626222128.406106-11-jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
[Commit message clarified slightly, period added to one more note]
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

b32a6b6226-Jun-2024 John Snow <jsnow@redhat.com>

qapi: nail down convention that Errors sections are lists

By unstated convention, Errors sections are rST lists. Document the
convention, and make the one exception conform.

Signed-off-by: John Sn

qapi: nail down convention that Errors sections are lists

By unstated convention, Errors sections are rST lists. Document the
convention, and make the one exception conform.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240626222128.406106-10-jsnow@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

2664f31726-Jun-2024 John Snow <jsnow@redhat.com>

docs/qapidoc: fix nested parsing under untagged sections

Sphinx does not like sections without titles, because it wants to
convert every section into a reference. When there is no title, it
struggle

docs/qapidoc: fix nested parsing under untagged sections

Sphinx does not like sections without titles, because it wants to
convert every section into a reference. When there is no title, it
struggles to do this and transforms the tree inproperly.

Depending on the rST used, this may result in an assertion error deep in
the docutils HTMLWriter.

(Observed when using ".. admonition:: Notes" under such a section - When
this is transformed with its own <title> element, Sphinx is fooled into
believing this title belongs to the section and incorrect mutates the
docutils tree, leading to errors during rendering time.)

When parsing an untagged section (free paragraphs), skip making a hollow
section and instead append the parse results to the prior section.

Many Bothans died to bring us this information.

The resulting output changes are basically invisible.

Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240626222128.406106-8-jsnow@redhat.com>
[Mention output changes in commit message]
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

939c639e26-Jun-2024 John Snow <jsnow@redhat.com>

qapi/parser: preserve indentation in QAPIDoc sections

Change get_doc_indented() to preserve indentation on all subsequent text
lines, and create a compatibility dedent() function for qapidoc.py that

qapi/parser: preserve indentation in QAPIDoc sections

Change get_doc_indented() to preserve indentation on all subsequent text
lines, and create a compatibility dedent() function for qapidoc.py that
removes indentation the same way get_doc_indented() did.

This is being done for the benefit of a new qapidoc generator which
requires that indentation in argument and features sections are
preserved.

Prior to this patch, a section like this:

```
@name: lorem ipsum
dolor sit amet
consectetur adipiscing elit
```

would have its body text be parsed into:

```
lorem ipsum
dolor sit amet
consectetur adipiscing elit
```

We want to preserve the indentation for even the first body line so that
the entire block can be parsed directly as rST. This patch would now
parse that segment into:

```
lorem ipsum
dolor sit amet
consectetur adipiscing elit
```

This is helpful for formatting arguments and features as field lists in
rST, where the new generator will format this information as:

```
:arg type name: lorem ipsum
dolor sit amet
consectetur apidiscing elit
```

...and can be formed by the simple concatenation of the field list
construct and the body text. The indents help preserve the continuation
of a block-level element, and further allow the use of additional rST
block-level constructs such as code blocks, lists, and other such
markup.

This understandably breaks the existing qapidoc.py; so a new function is
added there to dedent the text for compatibility. Once the new generator
is merged, this function will not be needed any longer and can be
dropped.

I verified this patch changes absolutely nothing by comparing the
md5sums of the QMP ref html pages both before and after the change, so
it's certified inert. QAPI test output has been updated to reflect the
new strategy of preserving indents for rST.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240626222128.406106-6-jsnow@redhat.com>
[Lost commit message paragraph restored]
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

36c6dcc226-Jun-2024 John Snow <jsnow@redhat.com>

docs/qapidoc: delint a tiny portion of the module

In a forthcoming series that adds a new QMP documentation generator, it
will be helpful to have a linting baseline. However, there's no need to
shuf

docs/qapidoc: delint a tiny portion of the module

In a forthcoming series that adds a new QMP documentation generator, it
will be helpful to have a linting baseline. However, there's no need to
shuffle around the deck chairs too much, because most of this code will
be removed once that new qapidoc generator (the "transmogrifier") is in
place.

To ease my pain: just turn off the black auto-formatter for most, but
not all, of qapidoc.py. This will help ensure that *new* code follows a
coding standard without bothering too much with cleaning up the existing
code.

Code that I intend to keep is still subject to the delinting beam.

Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Message-ID: <20240626222128.406106-5-jsnow@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...

5dd22c2026-Jun-2024 John Snow <jsnow@redhat.com>

docs/qapidoc: remove unused intersperse function

This function has been unused since since commit
fd62bff901b (sphinx/qapidoc: Drop code to generate doc for simple
union tag).

Signed-off-by: John S

docs/qapidoc: remove unused intersperse function

This function has been unused since since commit
fd62bff901b (sphinx/qapidoc: Drop code to generate doc for simple
union tag).

Signed-off-by: John Snow <jsnow@redhat.com>
Message-ID: <20240626222128.406106-4-jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
[Commit message tweaked]
Signed-off-by: Markus Armbruster <armbru@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/.gitlab-ci.d/crossbuilds.yml
/openbmc/qemu/configs/targets/aarch64-linux-user.mak
/openbmc/qemu/configure
/openbmc/qemu/contrib/plugins/lockstep.c
sphinx/qapidoc.py
/openbmc/qemu/gdb-xml/aarch64-mte.xml
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/internals.h
/openbmc/qemu/gdbstub/syscalls.c
/openbmc/qemu/gdbstub/system.c
/openbmc/qemu/gdbstub/user-target.c
/openbmc/qemu/gdbstub/user.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/core/loader-fit.c
/openbmc/qemu/include/gdbstub/commands.h
/openbmc/qemu/include/qemu/plugin.h
/openbmc/qemu/linux-user/aarch64/meson.build
/openbmc/qemu/linux-user/aarch64/mte_user_helper.c
/openbmc/qemu/linux-user/aarch64/mte_user_helper.h
/openbmc/qemu/linux-user/aarch64/target_prctl.h
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/plugins/core.c
/openbmc/qemu/scripts/qapi/introspect.py
/openbmc/qemu/scripts/qapi/schema.py
/openbmc/qemu/scripts/qapi/visit.py
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/trace-events
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/gdbstub.c
/openbmc/qemu/target/arm/gdbstub64.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/tcg/mte_helper.c
/openbmc/qemu/target/arm/tcg/mte_helper.h
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/docker/dockerfiles/debian-i686-cross.docker
/openbmc/qemu/tests/lcitool/refresh
/openbmc/qemu/tests/plugin/insn.c
/openbmc/qemu/tests/tcg/Makefile.target
/openbmc/qemu/tests/tcg/aarch64/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/aarch64/Makefile.target
/openbmc/qemu/tests/tcg/aarch64/bti-1.c
/openbmc/qemu/tests/tcg/aarch64/bti-3.c
/openbmc/qemu/tests/tcg/aarch64/fcvt.ref
/openbmc/qemu/tests/tcg/aarch64/gdbstub/test-mte.py
/openbmc/qemu/tests/tcg/aarch64/mte-1.c
/openbmc/qemu/tests/tcg/aarch64/mte-8.c
/openbmc/qemu/tests/tcg/arm/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/arm/Makefile.target
/openbmc/qemu/tests/tcg/arm/fcvt.c
/openbmc/qemu/tests/tcg/arm/fcvt.ref
/openbmc/qemu/tests/tcg/minilib/printf.c
/openbmc/qemu/trace-events
5915139a04-Jul-2024 Richard Henderson <richard.henderson@linaro.org>

Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

* meson: Pass objects and dependencies to declare_dependency(), not static_library()
* meson: Drop the .fa library suffix
* t

Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

* meson: Pass objects and dependencies to declare_dependency(), not static_library()
* meson: Drop the .fa library suffix
* target/i386: drop AMD machine check bits from Intel CPUID
* target/i386: add avx-vnni-int16 feature
* target/i386: SEV bugfixes
* target/i386: SEV-SNP -cpu host support
* char: fix exit issues

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmaGceoUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroNcpgf/XziKojGOTvYsE7xMijOUswYjCG5m
# ZVLqxTug8Q0zO/9mGvluKBTWmh8KhRWOovX5iZL8+F0gPoYPG4ONpNhh3wpA9+S7
# H7ph4V6sDJBX4l3OrOK6htD8dO5D9kns1iKGnE0lY60PkcHl+pU8BNWfK1zYp5US
# geiyzuRFRRtDmoNx5+o+w+D+W5msPZsnlj5BnPWM+O/ykeFfSrk2ztfdwHKXUhCB
# 5FJcu2sWVx+wsdVzdjgT8USi5+VTK4vabq3SfccmNRxBRnJOCU5MrR63stMDceo4
# TswSB88I0WRV1848AudcGZRkjvKaXLyHJ+QTjg2dp7itEARJ3MGsvOpS5A==
# =3kv7
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 04 Jul 2024 02:56:58 AM PDT
# gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg: issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full]

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu:
target/i386/SEV: implement mask_cpuid_features
target/i386: add support for masking CPUID features in confidential guests
char-stdio: Restore blocking mode of stdout on exit
target/i386: add avx-vnni-int16 feature
i386/sev: Fallback to the default SEV device if none provided in sev_get_capabilities()
i386/sev: Fix error message in sev_get_capabilities()
target/i386: do not include undefined bits in the AMD topoext leaf
target/i386: SEV: fix formatting of CPUID mismatch message
target/i386: drop AMD machine check bits from Intel CPUID
target/i386: pass X86CPU to x86_cpu_get_supported_feature_word
meson: Drop the .fa library suffix
Revert "meson: Propagate gnutls dependency"
meson: Pass objects and dependencies to declare_dependency()
meson: merge plugin_ldflags into emulator_link_args
meson: move block.syms dependency out of libblock
meson: move shared_module() calls where modules are already walked

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...

1406b7fc03-Jul-2024 Richard Henderson <richard.henderson@linaro.org>

Merge tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu into staging

virtio: features,fixes

A bunch of improvements:
- vhost dirty log is now only scanned once, not once per de

Merge tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu into staging

virtio: features,fixes

A bunch of improvements:
- vhost dirty log is now only scanned once, not once per device
- virtio and vhost now support VIRTIO_F_NOTIFICATION_DATA
- cxl gained DCD emulation support
- pvpanic gained shutdown support
- beginning of patchset for Generic Port Affinity Structure
- s3 support
- friendlier error messages when boot fails on some illegal configs
- for vhost-user, VHOST_USER_SET_LOG_BASE is now only sent once
- part of vhost-user support for any POSIX system -
not yet enabled due to qtest failures
- sr-iov VF setup code has been reworked significantly
- new tests, particularly for risc-v ACPI
- bugfixes

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

# -----BEGIN PGP SIGNATURE-----
#
# iQFDBAABCAAtFiEEXQn9CHHI+FuUyooNKB8NuNKNVGkFAmaF068PHG1zdEByZWRo
# YXQuY29tAAoJECgfDbjSjVRp+DMIAMC//mBXIZlPprfhb5cuZklxYi31Acgu5TUr
# njqjCkN+mFhXXZuc3B67xmrQ066IEPtsbzCjSnzuU41YK4tjvO1g+LgYJBv41G16
# va2k8vFM5pdvRA+UC9li1CCIPxiEcszxOdzZemj3szWLVLLUmwsc5OZLWWeFA5m8
# vXrrT9miODUz3z8/Xn/TVpxnmD6glKYIRK/IJRzzC4Qqqwb5H3ji/BJV27cDUtdC
# w6ns5RYIj5j4uAiG8wQNDggA1bMsTxFxThRDUwxlxaIwAcexrf1oRnxGRePA7PVG
# BXrt5yodrZYR2sR6svmOOIF3wPMUDKdlAItTcEgYyxaVo5rAdpc=
# =p9h4
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 03 Jul 2024 03:41:51 PM PDT
# gpg: using RSA key 5D09FD0871C8F85B94CA8A0D281F0DB8D28D5469
# gpg: issuer "mst@redhat.com"
# gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>" [undefined]
# gpg: aka "Michael S. Tsirkin <mst@redhat.com>" [undefined]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 0270 606B 6F3C DF3D 0B17 0970 C350 3912 AFBE 8E67
# Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA 8A0D 281F 0DB8 D28D 5469

* tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu: (85 commits)
hw/pci: Replace -1 with UINT32_MAX for romsize
pcie_sriov: Register VFs after migration
pcie_sriov: Remove num_vfs from PCIESriovPF
pcie_sriov: Release VFs failed to realize
pcie_sriov: Reuse SR-IOV VF device instances
pcie_sriov: Ensure VF function number does not overflow
pcie_sriov: Do not manually unrealize
hw/ppc/spapr_pci: Do not reject VFs created after a PF
hw/ppc/spapr_pci: Do not create DT for disabled PCI device
hw/pci: Rename has_power to enabled
virtio-iommu: Clear IOMMUDevice when VFIO device is unplugged
virtio: remove virtio_tswap16s() call in vring_packed_event_read()
hw/cxl/events: Mark cxl-add-dynamic-capacity and cxl-release-dynamic-capcity unstable
hw/cxl/events: Improve QMP interfaces and documentation for add/release dynamic capacity.
tests/data/acpi/rebuild-expected-aml.sh: Add RISC-V
pc-bios/meson.build: Add support for RISC-V in unpack_edk2_blobs
meson.build: Add RISC-V to the edk2-target list
tests/data/acpi/virt: Move ARM64 ACPI tables under aarch64/${machine} path
tests/data/acpi: Move x86 ACPI tables under x86/${machine} path
tests/qtest/bios-tables-test.c: Set "arch" for x86 tests
...

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/backends/hostmem-shm.c
/openbmc/qemu/backends/meson.build
/openbmc/qemu/block.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/contrib/vhost-user-blk/vhost-user-blk.c
/openbmc/qemu/contrib/vhost-user-input/main.c
pcie_sriov.txt
specs/pvpanic.rst
system/devices/vhost-user.rst
/openbmc/qemu/host/include/riscv/host/cpuinfo.h
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/block/vhost-user-blk.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/cxl/cxl-mailbox-utils.c
/openbmc/qemu/hw/display/vhost-user-gpu.c
/openbmc/qemu/hw/i386/e820_memory_layout.c
/openbmc/qemu/hw/i386/e820_memory_layout.h
/openbmc/qemu/hw/i386/fw_cfg.c
/openbmc/qemu/hw/i386/fw_cfg.h
/openbmc/qemu/hw/i386/microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/intc/apic_common.c
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/mem/cxl_type3_stubs.c
/openbmc/qemu/hw/misc/pvpanic-isa.c
/openbmc/qemu/hw/misc/pvpanic-pci.c
/openbmc/qemu/hw/misc/pvpanic.c
/openbmc/qemu/hw/net/igb.c
/openbmc/qemu/hw/net/vhost_net.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pci_host.c
/openbmc/qemu/hw/pci/pcie_sriov.c
/openbmc/qemu/hw/pci/trace-events
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/scsi/vhost-scsi.c
/openbmc/qemu/hw/scsi/vhost-user-scsi.c
/openbmc/qemu/hw/virtio/vhost-user-base.c
/openbmc/qemu/hw/virtio/vhost-user-fs.c
/openbmc/qemu/hw/virtio/vhost-user-vsock.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost-vsock-common.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-iommu.c
/openbmc/qemu/hw/virtio/virtio-mmio.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/xen/xen_pt_load_rom.c
/openbmc/qemu/include/hw/cxl/cxl_device.h
/openbmc/qemu/include/hw/cxl/cxl_events.h
/openbmc/qemu/include/hw/misc/pvpanic.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pci/pci_device.h
/openbmc/qemu/include/hw/pci/pcie_sriov.h
/openbmc/qemu/include/hw/virtio/vhost-user.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio-pci.h
/openbmc/qemu/include/hw/virtio/virtio.h
/openbmc/qemu/include/standard-headers/linux/ethtool.h
/openbmc/qemu/include/standard-headers/linux/pci_regs.h
/openbmc/qemu/include/standard-headers/linux/virtio_bt.h
/openbmc/qemu/include/standard-headers/linux/virtio_mem.h
/openbmc/qemu/include/standard-headers/linux/virtio_net.h
/openbmc/qemu/include/standard-headers/misc/pvpanic.h
/openbmc/qemu/include/sysemu/runstate.h
/openbmc/qemu/linux-headers/asm-generic/unistd.h
/openbmc/qemu/linux-headers/asm-mips/unistd_n32.h
/openbmc/qemu/linux-headers/asm-mips/unistd_n64.h
/openbmc/qemu/linux-headers/asm-mips/unistd_o32.h
/openbmc/qemu/linux-headers/asm-powerpc/unistd_32.h
/openbmc/qemu/linux-headers/asm-powerpc/unistd_64.h
/openbmc/qemu/linux-headers/asm-s390/unistd_32.h
/openbmc/qemu/linux-headers/asm-s390/unistd_64.h
/openbmc/qemu/linux-headers/asm-x86/unistd_32.h
/openbmc/qemu/linux-headers/asm-x86/unistd_64.h
/openbmc/qemu/linux-headers/asm-x86/unistd_x32.h
/openbmc/qemu/linux-headers/linux/kvm.h
/openbmc/qemu/linux-headers/linux/stddef.h
/openbmc/qemu/meson.build
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/pc-bios/meson.build
/openbmc/qemu/qapi/cxl.json
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qapi/run-state.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/subprojects/libvhost-user/libvhost-user.c
/openbmc/qemu/system/runstate.c
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/kvm/xen-emu.c
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/riscv/tcg-target.h
/openbmc/qemu/tests/data/acpi/aarch64/virt/APIC
/openbmc/qemu/tests/data/acpi/aarch64/virt/APIC.acpihmatvirt
/openbmc/qemu/tests/data/acpi/aarch64/virt/APIC.topology
/openbmc/qemu/tests/data/acpi/aarch64/virt/DBG2
/openbmc/qemu/tests/data/acpi/aarch64/virt/DSDT
/openbmc/qemu/tests/data/acpi/aarch64/virt/DSDT.acpihmatvirt
/openbmc/qemu/tests/data/acpi/aarch64/virt/DSDT.memhp
/openbmc/qemu/tests/data/acpi/aarch64/virt/DSDT.pxb
/openbmc/qemu/tests/data/acpi/aarch64/virt/DSDT.topology
/openbmc/qemu/tests/data/acpi/aarch64/virt/FACP
/openbmc/qemu/tests/data/acpi/aarch64/virt/GTDT
/openbmc/qemu/tests/data/acpi/aarch64/virt/HMAT.acpihmatvirt
/openbmc/qemu/tests/data/acpi/aarch64/virt/IORT
/openbmc/qemu/tests/data/acpi/aarch64/virt/MCFG
/openbmc/qemu/tests/data/acpi/aarch64/virt/NFIT.memhp
/openbmc/qemu/tests/data/acpi/aarch64/virt/PPTT
/openbmc/qemu/tests/data/acpi/aarch64/virt/PPTT.acpihmatvirt
/openbmc/qemu/tests/data/acpi/aarch64/virt/PPTT.topology
/openbmc/qemu/tests/data/acpi/aarch64/virt/SLIT.memhp
/openbmc/qemu/tests/data/acpi/aarch64/virt/SPCR
/openbmc/qemu/tests/data/acpi/aarch64/virt/SRAT.acpihmatvirt
/openbmc/qemu/tests/data/acpi/aarch64/virt/SRAT.memhp
/openbmc/qemu/tests/data/acpi/aarch64/virt/SRAT.numamem
/openbmc/qemu/tests/data/acpi/aarch64/virt/SSDT.memhp
/openbmc/qemu/tests/data/acpi/aarch64/virt/VIOT
/openbmc/qemu/tests/data/acpi/rebuild-expected-aml.sh
/openbmc/qemu/tests/data/acpi/x86/microvm/APIC
/openbmc/qemu/tests/data/acpi/x86/microvm/APIC.ioapic2
/openbmc/qemu/tests/data/acpi/x86/microvm/APIC.pcie
/openbmc/qemu/tests/data/acpi/x86/microvm/DSDT
/openbmc/qemu/tests/data/acpi/x86/microvm/DSDT.ioapic2
/openbmc/qemu/tests/data/acpi/x86/microvm/DSDT.pcie
/openbmc/qemu/tests/data/acpi/x86/microvm/DSDT.rtc
/openbmc/qemu/tests/data/acpi/x86/microvm/DSDT.usb
/openbmc/qemu/tests/data/acpi/x86/microvm/ERST.pcie
/openbmc/qemu/tests/data/acpi/x86/microvm/FACP
/openbmc/qemu/tests/data/acpi/x86/pc/APIC
/openbmc/qemu/tests/data/acpi/x86/pc/APIC.acpihmat
/openbmc/qemu/tests/data/acpi/x86/pc/APIC.cphp
/openbmc/qemu/tests/data/acpi/x86/pc/APIC.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.acpierst
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.acpihmat
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.bridge
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.cphp
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.hpbridge
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.hpbrroot
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.ipmikcs
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.memhp
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.nohpet
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.numamem
/openbmc/qemu/tests/data/acpi/x86/pc/DSDT.roothp
/openbmc/qemu/tests/data/acpi/x86/pc/ERST.acpierst
/openbmc/qemu/tests/data/acpi/x86/pc/FACP
/openbmc/qemu/tests/data/acpi/x86/pc/FACP.nosmm
/openbmc/qemu/tests/data/acpi/x86/pc/FACS
/openbmc/qemu/tests/data/acpi/x86/pc/HMAT.acpihmat
/openbmc/qemu/tests/data/acpi/x86/pc/HPET
/openbmc/qemu/tests/data/acpi/x86/pc/NFIT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/pc/SLIT.cphp
/openbmc/qemu/tests/data/acpi/x86/pc/SLIT.memhp
/openbmc/qemu/tests/data/acpi/x86/pc/SRAT.acpihmat
/openbmc/qemu/tests/data/acpi/x86/pc/SRAT.cphp
/openbmc/qemu/tests/data/acpi/x86/pc/SRAT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/pc/SRAT.memhp
/openbmc/qemu/tests/data/acpi/x86/pc/SRAT.numamem
/openbmc/qemu/tests/data/acpi/x86/pc/SSDT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/pc/WAET
/openbmc/qemu/tests/data/acpi/x86/q35/APIC
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.acpihmat
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.acpihmat-noinitiator
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.core-count
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.core-count2
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.cphp
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.thread-count
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.thread-count2
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.type4-count
/openbmc/qemu/tests/data/acpi/x86/q35/APIC.xapic
/openbmc/qemu/tests/data/acpi/x86/q35/CEDT.cxl
/openbmc/qemu/tests/data/acpi/x86/q35/DMAR.dmar
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.acpierst
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.acpihmat
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.acpihmat-noinitiator
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.applesmc
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.bridge
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.core-count
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.core-count2
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.cphp
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.cxl
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.ipmibt
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.ipmismbus
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.ivrs
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.memhp
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.mmio64
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.multi-bridge
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.noacpihp
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.nohpet
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.numamem
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.pvpanic-isa
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.thread-count
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.thread-count2
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.tis.tpm12
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.tis.tpm2
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.type4-count
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.viot
/openbmc/qemu/tests/data/acpi/x86/q35/DSDT.xapic
/openbmc/qemu/tests/data/acpi/x86/q35/ERST.acpierst
/openbmc/qemu/tests/data/acpi/x86/q35/FACP
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.core-count
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.core-count2
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.nosmm
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.slic
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.thread-count
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.thread-count2
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.type4-count
/openbmc/qemu/tests/data/acpi/x86/q35/FACP.xapic
/openbmc/qemu/tests/data/acpi/x86/q35/FACS
/openbmc/qemu/tests/data/acpi/x86/q35/HMAT.acpihmat
/openbmc/qemu/tests/data/acpi/x86/q35/HMAT.acpihmat-noinitiator
/openbmc/qemu/tests/data/acpi/x86/q35/HPET
/openbmc/qemu/tests/data/acpi/x86/q35/IVRS.ivrs
/openbmc/qemu/tests/data/acpi/x86/q35/MCFG
/openbmc/qemu/tests/data/acpi/x86/q35/NFIT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/q35/SLIC.slic
/openbmc/qemu/tests/data/acpi/x86/q35/SLIT.cphp
/openbmc/qemu/tests/data/acpi/x86/q35/SLIT.memhp
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.acpihmat
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.acpihmat-noinitiator
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.cphp
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.memhp
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.mmio64
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.numamem
/openbmc/qemu/tests/data/acpi/x86/q35/SRAT.xapic
/openbmc/qemu/tests/data/acpi/x86/q35/SSDT.dimmpxm
/openbmc/qemu/tests/data/acpi/x86/q35/TCPA.tis.tpm12
/openbmc/qemu/tests/data/acpi/x86/q35/TPM2.tis.tpm2
/openbmc/qemu/tests/data/acpi/x86/q35/VIOT.viot
/openbmc/qemu/tests/data/acpi/x86/q35/WAET
/openbmc/qemu/tests/data/uefi-boot-images/bios-tables-test.riscv64.iso.qcow2
/openbmc/qemu/tests/qemu-iotests/061
/openbmc/qemu/tests/qemu-iotests/061.out
/openbmc/qemu/tests/qemu-iotests/244
/openbmc/qemu/tests/qemu-iotests/270
/openbmc/qemu/tests/qtest/bios-tables-test.c
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/pvpanic-pci-test.c
/openbmc/qemu/tests/qtest/pvpanic-test.c
/openbmc/qemu/tests/qtest/vhost-user-blk-test.c
/openbmc/qemu/tests/qtest/vhost-user-test.c
/openbmc/qemu/tests/tcg/x86_64/Makefile.target
/openbmc/qemu/tests/tcg/x86_64/test-2413.c
/openbmc/qemu/tests/uefi-test-tools/Makefile
/openbmc/qemu/tests/uefi-test-tools/UefiTestToolsPkg/UefiTestToolsPkg.dsc
/openbmc/qemu/tests/uefi-test-tools/uefi-test-build.config
/openbmc/qemu/util/cpuinfo-aarch64.c
/openbmc/qemu/util/cpuinfo-ppc.c
/openbmc/qemu/util/cpuinfo-riscv.c
/openbmc/qemu/util/meson.build
/openbmc/qemu/util/vhost-user-server.c

12345678910>>...123