History log of /openbmc/qemu/rust/qemu-api/ (Results 1 – 25 of 139)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
f7b87e4618-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Include complete crate path of VMStateFlags in vmstate_clock

The use of "bindings::*" masks incomplete path of VMStateFlags.

Include complete crate path of VMStateFlags in vmstate_clo

rust/vmstate: Include complete crate path of VMStateFlags in vmstate_clock

The use of "bindings::*" masks incomplete path of VMStateFlags.

Include complete crate path of VMStateFlags in vmstate_clock, and clean
up "bindings::*" in device_class.rs of pl011.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-16-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

9bd7e6f718-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Add unit test for vmstate_validate

Add a unit test for vmstate_validate, which corresponds to the C version
macro: VMSTATE_VALIDATE.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link

rust/vmstate: Add unit test for vmstate_validate

Add a unit test for vmstate_validate, which corresponds to the C version
macro: VMSTATE_VALIDATE.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-15-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

8df1b00118-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Add unit test for pointer case

Add a unit test to cover some patterns accepted by vmstate_of macro,
which correspond to the following C version macros:
* VMSTATE_POINTER
* VMSTATE_AR

rust/vmstate: Add unit test for pointer case

Add a unit test to cover some patterns accepted by vmstate_of macro,
which correspond to the following C version macros:
* VMSTATE_POINTER
* VMSTATE_ARRAY_OF_POINTER

Note: Currently, vmstate_struct can't handle the pointer to structure
case. Leave this case as a FIXME and use vmstate_unused as a place
holder.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-14-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

57c327f318-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Add unit test for vmstate_{of|struct} macro

Add a unit test to cover some patterns accepted by vmstate_of and
vmstate_struct macros, which correspond to the following C version
macros:

rust/vmstate: Add unit test for vmstate_{of|struct} macro

Add a unit test to cover some patterns accepted by vmstate_of and
vmstate_struct macros, which correspond to the following C version
macros:

* VMSTATE_BOOL_V
* VMSTATE_U64
* VMSTATE_STRUCT_VARRAY_UINT8
* (no C version) MULTIPLY variant of VMSTATE_STRUCT_VARRAY_UINT32
* VMSTATE_ARRAY

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-13-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

1998502118-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Add unit test for vmstate_of macro

The vmstate has too many combinations of VMStateFlags and VMStateField.
Currently, the best way to test is to ensure that the Rust vmstate
definition

rust/vmstate: Add unit test for vmstate_of macro

The vmstate has too many combinations of VMStateFlags and VMStateField.
Currently, the best way to test is to ensure that the Rust vmstate
definition is consistent with the (possibly corresponding) C version.

Add a unit test to cover some patterns accepted by vmstate_of macro,
which correspond to the following C version macros:
* VMSTATE_U16
* VMSTATE_UNUSED
* VMSTATE_VARRAY_UINT16_UNSAFE
* VMSTATE_VARRAY_MULTIPLY

Note: Because vmstate_info_* are defined in vmstate-types.c, it's
necessary to link libmigration to rust unit tests. In the future,
maybe it's possible to spilt libmigration from rust_qemu_api_objs.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-12-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

b131003718-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Support vmstate_validate

In C version, VMSTATE_VALIDATE accepts the function pointer, which is
used to check if some conditions of structure could meet, although the
C version macro do

rust/vmstate: Support vmstate_validate

In C version, VMSTATE_VALIDATE accepts the function pointer, which is
used to check if some conditions of structure could meet, although the
C version macro doesn't accept any structure as the opaque type.

But it's hard to integrate VMSTATE_VALIDAE into vmstate_struct, a new
macro has to be introduced to specifically handle the case corresponding
to VMSTATE_VALIDATE.

One of the difficulties is inferring the type of a callback by its name
`test_fn`. We can't directly use `test_fn` as a parameter of
test_cb_builder__() to get its type "F", because in this way, Rust
compiler will be too conservative on drop check and complain "the
destructor for this type cannot be evaluated in constant functions".

Fortunately, PhantomData<T> could help in this case, because it is
considered to never have a destructor, no matter its field type [*].

The `phantom__()` in the `call_func_with_field` macro provides a good
example of using PhantomData to infer type. So copy this idea and apply
it to the `vmstate_validate` macro.

[*]: https://doc.rust-lang.org/std/ops/trait.Drop.html#drop-check

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-11-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

3baf82e018-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Re-implement VMState trait for timer binding

At present, Rust side has a timer binding "timer::Timer", so the vmstate
for timer should base on that binding instead of the raw
"binding:

rust/vmstate: Re-implement VMState trait for timer binding

At present, Rust side has a timer binding "timer::Timer", so the vmstate
for timer should base on that binding instead of the raw
"binding::QEMUTimer".

It's possible to apply impl_vmstate_transparent for cell::Opaque and
then impl_vmstate_forward for timer::Timer. But binding::QEMUTimer
shouldn't be used directly, so that vmstate for such raw timer type is
useless.

Thus, apply impl_vmstate_scalar for timer::Timer. And since Opaque<> is
useful, apply impl_vmstate_transparent for cell::Opaque as well.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-10-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

5006e39c18-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Relax array check when build varray in vmstate_struct

The varry of structure created by vmstate_struct is different with
vmstate_of. This is because vmstate_struct uses the `vmsd` to t

rust/vmstate: Relax array check when build varray in vmstate_struct

The varry of structure created by vmstate_struct is different with
vmstate_of. This is because vmstate_struct uses the `vmsd` to traverse
the vmstates of structure's fields, rather than treating the structure
directly as a well-defined vmstate.

Therefore, there's no need to check array flag when building varray by
vmstate_struct.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-9-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

e5655e9218-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Fix unnecessary VMState bound of with_varray_flag()

The VMState type bound is not used in with_varray_flag().

And for vmstate_struct, Rust cannot infer the type of `num` from the
call

rust/vmstate: Fix unnecessary VMState bound of with_varray_flag()

The VMState type bound is not used in with_varray_flag().

And for vmstate_struct, Rust cannot infer the type of `num` from the
call_func_with_field(), so this causes the compiling error because it
complains "cannot satisfy `_: VMState`" in with_varray_flag().

Note Rust can infer the type in vmstate_of macro so that
with_varray_flag() can work at there. It is possible that the different
initialization ways in the two macros cause differences in Rust's
type inference.

But in fact, the VMState type bound is not used in with_varray_flag()
and vmstate_varray_flag() has already checked the VMState type, it's
safe to drop VMState bound of with_varray_flag(), which can fix the
above compiling error.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-8-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

42c814b118-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Fix "cannot infer type" error in vmstate_struct

Rust cannot infer the type (it should be VMStateField) after
Zeroable::ZERO, which cause the compiling error.

To fix this error, call w

rust/vmstate: Fix "cannot infer type" error in vmstate_struct

Rust cannot infer the type (it should be VMStateField) after
Zeroable::ZERO, which cause the compiling error.

To fix this error, call with_varray_flag() after VMStateField's
initialization.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-7-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

6182582518-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Fix type check for varray in vmstate_struct

When pass a varray to vmstate_struct, the `type` parameter should be the
type of the element in the varray, for example:

vmstate_struct!(HP

rust/vmstate: Fix type check for varray in vmstate_struct

When pass a varray to vmstate_struct, the `type` parameter should be the
type of the element in the varray, for example:

vmstate_struct!(HPETState, timers, [0 .. num_timers], VMSTATE_HPET_TIMER,
BqlRefCell<HPETTimer>).with_version_id(0)

But this breaks current type check, because it checks the type of
`field`, which is an array type (for the above example, type of timers
is [BqlRefCell<HPETTimer>; 32], not BqlRefCell<HPETTimer>).

But the current assert_field_type() can no longer be extended to include
new arguments, so a variant of it (a second macro containing the
`num = $num:ident` parameter) had to be added to handle array cases.

In this new macro, it not only checks the type of element, but also
checks whether the `num` (number of elements in varray) is out of range.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-6-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

2079706918-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Fix size field of VMStateField with VMS_ARRAY_OF_POINTER flag

The `size` field of the VMStateField with VMS_ARRAY_OF_POINTER flag
should stores the size of pointer, which depends on pl

rust/vmstate: Fix size field of VMStateField with VMS_ARRAY_OF_POINTER flag

The `size` field of the VMStateField with VMS_ARRAY_OF_POINTER flag
should stores the size of pointer, which depends on platform.

Currently, `*const`, `*mut`, `NonNull`, `Box<>` and their wrapper are
supported, and they have the same size as `usize`.

Store the size (of `usize`) when VMS_ARRAY_OF_POINTER flag is set.

The size may be changed when more smart pointers are supported, but now
the size of "usize" is enough.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-5-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

c3d80af518-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Fix num field when varray flags are set

Array type vmstate has the VMStateField with `num` equals its length.

When the varray vmstate is built based a array type, the `num` field
shou

rust/vmstate: Fix num field when varray flags are set

Array type vmstate has the VMStateField with `num` equals its length.

When the varray vmstate is built based a array type, the `num` field
should be cleaned to 0, because varray uses `num_offset` instead of
`num` to store elements number information.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-4-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

6ca5c3be18-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Fix num_offset in vmstate macros

`num_offset` is a member of `VMStateField`, and there's no need to use
"." to access this field in a `VMStateField` instance.

Signed-off-by: Zhao Liu

rust/vmstate: Fix num_offset in vmstate macros

`num_offset` is a member of `VMStateField`, and there's no need to use
"." to access this field in a `VMStateField` instance.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-3-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

ea8a7ceb18-Mar-2025 Zhao Liu <zhao1.liu@intel.com>

rust/vmstate: Remove unnecessary unsafe

Remove the `unsafe` block of vmsd, because vmsd (passed to
vmstate_struct) is defined in Rust side now, and it doesn't need
`unsafe`.

Signed-off-by: Zhao Liu

rust/vmstate: Remove unnecessary unsafe

Remove the `unsafe` block of vmsd, because vmsd (passed to
vmstate_struct) is defined in Rust side now, and it doesn't need
`unsafe`.

Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
Link: https://lore.kernel.org/r/20250318130219.1799170-2-zhao1.liu@intel.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

9d116f4221-Mar-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: assertions: add static_assert

Add a new assertion that is similar to "const { assert!(...) }" but can be used
outside functions and with older versions of Rust. A similar macro is found in
Li

rust: assertions: add static_assert

Add a new assertion that is similar to "const { assert!(...) }" but can be used
outside functions and with older versions of Rust. A similar macro is found in
Linux, whereas the "static_assertions" crate has a const_assert macro that
produces worse error messages.

Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Link: https://lore.kernel.org/r/20250321112523.1774131-2-peter.maydell@linaro.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest-template.yml
/openbmc/qemu/.gitlab-ci.d/check-units.py
/openbmc/qemu/.gitlab-ci.d/cirrus/freebsd-14.vars
/openbmc/qemu/.gitlab-ci.d/cirrus/macos-14.vars
/openbmc/qemu/.gitlab-ci.d/static_checks.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/VERSION
/openbmc/qemu/accel/accel-system.c
/openbmc/qemu/accel/accel-target.c
/openbmc/qemu/accel/hvf/hvf-accel-ops.c
/openbmc/qemu/accel/kvm/kvm-accel-ops.c
/openbmc/qemu/accel/kvm/kvm-cpus.h
/openbmc/qemu/accel/qtest/qtest.c
/openbmc/qemu/accel/stubs/tcg-stub.c
/openbmc/qemu/accel/tcg/cpu-exec-common.c
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/icount-common.c
/openbmc/qemu/accel/tcg/internal-common.h
/openbmc/qemu/accel/tcg/meson.build
/openbmc/qemu/accel/tcg/monitor.c
/openbmc/qemu/accel/tcg/tb-internal.h
/openbmc/qemu/accel/tcg/tcg-accel-ops-icount.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-rr.c
/openbmc/qemu/accel/tcg/tcg-accel-ops.c
/openbmc/qemu/accel/tcg/tcg-runtime-gvec.c
/openbmc/qemu/accel/tcg/tcg-runtime.c
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/user-exec-stub.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/accel/tcg/watchpoint.c
/openbmc/qemu/accel/xen/xen-all.c
/openbmc/qemu/backends/tpm/tpm_util.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/create.c
/openbmc/qemu/block/file-posix.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/io_uring.c
/openbmc/qemu/block/linux-aio.c
/openbmc/qemu/block/qed.c
/openbmc/qemu/block/snapshot.c
/openbmc/qemu/blockdev-nbd.c
/openbmc/qemu/bsd-user/bsd-mem.h
/openbmc/qemu/bsd-user/meson.build
/openbmc/qemu/bsd-user/mmap.c
/openbmc/qemu/bsd-user/plugin-api.c
/openbmc/qemu/bsd-user/qemu.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/common-user/plugin-api.c.inc
/openbmc/qemu/configs/devices/i386-softmmu/default.mak
/openbmc/qemu/contrib/plugins/meson.build
/openbmc/qemu/cpu-common.c
/openbmc/qemu/cpu-target.c
/openbmc/qemu/disas/disas-common.c
/openbmc/qemu/docs/about/build-platforms.rst
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/conf.py
/openbmc/qemu/docs/devel/build-system.rst
/openbmc/qemu/docs/devel/codebase.rst
/openbmc/qemu/docs/devel/index-build.rst
/openbmc/qemu/docs/devel/kconfig.rst
/openbmc/qemu/docs/devel/migration/vfio.rst
/openbmc/qemu/docs/devel/qapi-code-gen.rst
/openbmc/qemu/docs/devel/qapi-domain.rst
/openbmc/qemu/docs/devel/testing/functional.rst
/openbmc/qemu/docs/glossary.rst
/openbmc/qemu/docs/interop/qemu-ga-ref.rst
/openbmc/qemu/docs/interop/qemu-qmp-ref.rst
/openbmc/qemu/docs/interop/qemu-storage-daemon-qmp-ref.rst
/openbmc/qemu/docs/specs/aspeed-intc.rst
/openbmc/qemu/docs/specs/index.rst
/openbmc/qemu/docs/sphinx-static/theme_overrides.css
/openbmc/qemu/docs/sphinx/compat.py
/openbmc/qemu/docs/sphinx/qapi_domain.py
/openbmc/qemu/docs/sphinx/qapidoc.py
/openbmc/qemu/docs/sphinx/qapidoc_legacy.py
/openbmc/qemu/docs/system/arm/bananapi_m2u.rst
/openbmc/qemu/docs/system/arm/orangepi.rst
/openbmc/qemu/docs/system/devices/igb.rst
/openbmc/qemu/docs/system/ppc/amigang.rst
/openbmc/qemu/docs/system/ppc/embedded.rst
/openbmc/qemu/docs/system/ppc/powernv.rst
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/system.c
/openbmc/qemu/gdbstub/user-target.c
/openbmc/qemu/gdbstub/user.c
/openbmc/qemu/host/include/aarch64/host/atomic128-cas.h
/openbmc/qemu/host/include/aarch64/host/atomic128-ldst.h.inc
/openbmc/qemu/host/include/generic/host/atomic128-cas.h.inc
/openbmc/qemu/host/include/generic/host/atomic128-ldst.h.inc
/openbmc/qemu/host/include/loongarch64/host/atomic128-ldst.h.inc
/openbmc/qemu/host/include/x86_64/host/atomic128-ldst.h.inc
/openbmc/qemu/host/include/x86_64/host/load-extract-al16-al8.h.inc
/openbmc/qemu/hw/acpi/acpi-stub.c
/openbmc/qemu/hw/acpi/core.c
/openbmc/qemu/hw/acpi/cpu.c
/openbmc/qemu/hw/acpi/cpu_hotplug.c
/openbmc/qemu/hw/arm/Kconfig
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/aspeed_ast10x0.c
/openbmc/qemu/hw/arm/aspeed_ast2400.c
/openbmc/qemu/hw/arm/aspeed_ast2600.c
/openbmc/qemu/hw/arm/aspeed_ast27x0.c
/openbmc/qemu/hw/arm/fsl-imx25.c
/openbmc/qemu/hw/arm/fsl-imx6.c
/openbmc/qemu/hw/arm/fsl-imx6ul.c
/openbmc/qemu/hw/arm/fsl-imx7.c
/openbmc/qemu/hw/arm/fsl-imx8mp.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/smmu-common.c
/openbmc/qemu/hw/arm/smmu-internal.h
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/trace-events
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/block/block.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen-block.c
/openbmc/qemu/hw/char/Kconfig
/openbmc/qemu/hw/char/meson.build
/openbmc/qemu/hw/char/pl011.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/core/cpu-system.c
/openbmc/qemu/hw/core/cpu-user.c
/openbmc/qemu/hw/core/generic-loader.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/meson.build
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/core/qdev-properties.c
/openbmc/qemu/hw/display/apple-gfx.m
/openbmc/qemu/hw/display/qxl.c
/openbmc/qemu/hw/gpio/npcm7xx_gpio.c
/openbmc/qemu/hw/i386/fw_cfg.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/macio.c
/openbmc/qemu/hw/intc/arm_gicv3_cpuif.c
/openbmc/qemu/hw/intc/armv7m_nvic.c
/openbmc/qemu/hw/intc/aspeed_intc.c
/openbmc/qemu/hw/intc/pnv_xive.c
/openbmc/qemu/hw/intc/pnv_xive2.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/trace-events
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/intc/xive2.c
/openbmc/qemu/hw/mips/jazz.c
/openbmc/qemu/hw/misc/aspeed_hace.c
/openbmc/qemu/hw/misc/aspeed_scu.c
/openbmc/qemu/hw/misc/mps2-fpgaio.c
/openbmc/qemu/hw/misc/xlnx-versal-trng.c
/openbmc/qemu/hw/net/e1000e.c
/openbmc/qemu/hw/net/eepro100.c
/openbmc/qemu/hw/net/igb.c
/openbmc/qemu/hw/net/net_tx_pkt.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/nvme/nguid.c
/openbmc/qemu/hw/nvram/xlnx-bbram.c
/openbmc/qemu/hw/nvram/xlnx-efuse.c
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/openrisc/virt.c
/openbmc/qemu/hw/pci-bridge/pcie_pci_bridge.c
/openbmc/qemu/hw/pci-host/pnv_phb4_pec.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/trace-events
/openbmc/qemu/hw/ppc/Kconfig
/openbmc/qemu/hw/ppc/amigaone.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/meson.build
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_bmc.c
/openbmc/qemu/hw/ppc/pnv_homer.c
/openbmc/qemu/hw/ppc/pnv_lpc.c
/openbmc/qemu/hw/ppc/pnv_occ.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/sam460ex.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_caps.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_nested.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/rtc/Kconfig
/openbmc/qemu/hw/rtc/meson.build
/openbmc/qemu/hw/rtc/rs5c372.c
/openbmc/qemu/hw/rtc/trace-events
/openbmc/qemu/hw/s390x/ccw-device.c
/openbmc/qemu/hw/s390x/css.c
/openbmc/qemu/hw/s390x/s390-pci-bus.c
/openbmc/qemu/hw/s390x/s390-pci-inst.c
/openbmc/qemu/hw/s390x/s390-pci-vfio.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/virtio-scsi-dataplane.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sh4/sh7750.c
/openbmc/qemu/hw/ssi/pnv_spi.c
/openbmc/qemu/hw/timer/Kconfig
/openbmc/qemu/hw/timer/meson.build
/openbmc/qemu/hw/vfio/amd-xgbe.c
/openbmc/qemu/hw/vfio/ap.c
/openbmc/qemu/hw/vfio/calxeda-xgmac.c
/openbmc/qemu/hw/vfio/ccw.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/igd.c
/openbmc/qemu/hw/vfio/iommufd.c
/openbmc/qemu/hw/vfio/meson.build
/openbmc/qemu/hw/vfio/migration-multifd.c
/openbmc/qemu/hw/vfio/migration-multifd.h
/openbmc/qemu/hw/vfio/migration.c
/openbmc/qemu/hw/vfio/pci-quirks.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/pci.h
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/vfio/spapr.c
/openbmc/qemu/hw/vfio/trace-events
/openbmc/qemu/hw/virtio/iothread-vq-mapping.c
/openbmc/qemu/hw/virtio/meson.build
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/xen/xen-mapcache.c
/openbmc/qemu/hw/xen/xen_pt.c
/openbmc/qemu/include/accel/accel-cpu-target.h
/openbmc/qemu/include/accel/tcg/cpu-ops.h
/openbmc/qemu/include/accel/tcg/getpc.h
/openbmc/qemu/include/block/aio.h
/openbmc/qemu/include/block/block_int-common.h
/openbmc/qemu/include/block/graph-lock.h
/openbmc/qemu/include/block/raw-aio.h
/openbmc/qemu/include/block/thread-pool.h
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/exec/cpu-defs.h
/openbmc/qemu/include/exec/cpu-interrupt.h
/openbmc/qemu/include/exec/cputlb.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/memop.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/page-protection.h
/openbmc/qemu/include/exec/poison.h
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/exec/ramblock.h
/openbmc/qemu/include/exec/target_page.h
/openbmc/qemu/include/hw/acpi/acpi.h
/openbmc/qemu/include/hw/arm/aspeed_soc.h
/openbmc/qemu/include/hw/arm/bsa.h
/openbmc/qemu/include/hw/arm/smmu-common.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/core/sysemu-cpu-ops.h
/openbmc/qemu/include/hw/hyperv/hyperv-proto.h
/openbmc/qemu/include/hw/intc/aspeed_intc.h
/openbmc/qemu/include/hw/misc/aspeed_hace.h
/openbmc/qemu/include/hw/misc/aspeed_scu.h
/openbmc/qemu/include/hw/pci-host/pnv_phb4.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pci/pci_device.h
/openbmc/qemu/include/hw/pci/pcie.h
/openbmc/qemu/include/hw/ppc/pnv.h
/openbmc/qemu/include/hw/ppc/pnv_homer.h
/openbmc/qemu/include/hw/ppc/pnv_occ.h
/openbmc/qemu/include/hw/ppc/pnv_pnor.h
/openbmc/qemu/include/hw/ppc/pnv_xscom.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/hw/ppc/spapr_nested.h
/openbmc/qemu/include/hw/ppc/xive.h
/openbmc/qemu/include/hw/ppc/xive2.h
/openbmc/qemu/include/hw/ppc/xive2_regs.h
/openbmc/qemu/include/hw/ppc/xive_regs.h
/openbmc/qemu/include/hw/qdev-properties.h
/openbmc/qemu/include/hw/s390x/s390-pci-bus.h
/openbmc/qemu/include/hw/s390x/s390-pci-clp.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/sd/sdhci.h
/openbmc/qemu/include/hw/ssi/pnv_spi.h
/openbmc/qemu/include/hw/vfio/vfio-common.h
/openbmc/qemu/include/hw/virtio/iothread-vq-mapping.h
/openbmc/qemu/include/hw/virtio/virtio-scsi.h
/openbmc/qemu/include/hw/xen/arch_hvm.h
/openbmc/qemu/include/migration/client-options.h
/openbmc/qemu/include/migration/cpr.h
/openbmc/qemu/include/migration/misc.h
/openbmc/qemu/include/migration/register.h
/openbmc/qemu/include/qapi/error.h
/openbmc/qemu/include/qemu/atomic128.h
/openbmc/qemu/include/qemu/compiler.h
/openbmc/qemu/include/qemu/iov.h
/openbmc/qemu/include/qemu/plugin-memory.h
/openbmc/qemu/include/qemu/thread.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/system/accel-ops.h
/openbmc/qemu/include/system/arch_init.h
/openbmc/qemu/include/system/block-backend-global-state.h
/openbmc/qemu/include/system/cpus.h
/openbmc/qemu/include/system/dma.h
/openbmc/qemu/include/system/hostmem.h
/openbmc/qemu/include/user/mmap.h
/openbmc/qemu/linux-user/aarch64/cpu_loop.c
/openbmc/qemu/linux-user/alpha/target_proc.h
/openbmc/qemu/linux-user/arm/cpu_loop.c
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/meson.build
/openbmc/qemu/linux-user/mmap.c
/openbmc/qemu/linux-user/plugin-api.c
/openbmc/qemu/linux-user/signal.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/linux-user/user-internals.h
/openbmc/qemu/linux-user/user-mmap.h
/openbmc/qemu/meson.build
/openbmc/qemu/migration/colo.c
/openbmc/qemu/migration/cpr.c
/openbmc/qemu/migration/meson.build
/openbmc/qemu/migration/migration-hmp-cmds.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/multifd-device-state.c
/openbmc/qemu/migration/multifd-nocomp.c
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/multifd.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/savevm.h
/openbmc/qemu/migration/trace-events
/openbmc/qemu/net/net.c
/openbmc/qemu/net/tap-linux.c
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/page-target.c
/openbmc/qemu/page-vary-target.c
/openbmc/qemu/pc-bios/README
/openbmc/qemu/pc-bios/meson.build
/openbmc/qemu/pc-bios/pnv-pnor.bin
/openbmc/qemu/pc-bios/skiboot.lid
/openbmc/qemu/pc-bios/slof.bin
/openbmc/qemu/plugins/api-system.c
/openbmc/qemu/plugins/api-user.c
/openbmc/qemu/plugins/api.c
/openbmc/qemu/plugins/core.c
/openbmc/qemu/plugins/loader.c
/openbmc/qemu/plugins/meson.build
/openbmc/qemu/plugins/plugin.h
/openbmc/qemu/plugins/system.c
/openbmc/qemu/plugins/user.c
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qapi/block-export.json
/openbmc/qemu/qapi/qapi-schema.json
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/roms/skiboot
/openbmc/qemu/rust/hw/char/pl011/src/device.rs
/openbmc/qemu/rust/hw/timer/Kconfig
/openbmc/qemu/rust/hw/timer/hpet/src/hpet.rs
src/assertions.rs
/openbmc/qemu/scripts/analyze-migration.py
/openbmc/qemu/scripts/ci/setup/ubuntu/ubuntu-2204-aarch64.yaml
/openbmc/qemu/scripts/ci/setup/ubuntu/ubuntu-2204-s390x.yaml
/openbmc/qemu/scripts/qapi/introspect.py
/openbmc/qemu/scripts/qapi/main.py
/openbmc/qemu/scripts/qapi/parser.py
/openbmc/qemu/scripts/qapi/schema.py
/openbmc/qemu/scripts/qapi/source.py
/openbmc/qemu/scripts/qcow2-to-stdout.py
/openbmc/qemu/storage-daemon/qapi/qapi-schema.json
/openbmc/qemu/system/arch_init.c
/openbmc/qemu/system/cpus.c
/openbmc/qemu/system/dma-helpers.c
/openbmc/qemu/system/globals-target.c
/openbmc/qemu/system/globals.c
/openbmc/qemu/system/meson.build
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/qdev-monitor.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/system/watchpoint.c
/openbmc/qemu/target/alpha/cpu.c
/openbmc/qemu/target/alpha/fpu_helper.c
/openbmc/qemu/target/alpha/helper.c
/openbmc/qemu/target/alpha/sys_helper.c
/openbmc/qemu/target/arm/arch_dump.c
/openbmc/qemu/target/arm/cpregs.h
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/debug_helper.c
/openbmc/qemu/target/arm/gtimer.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/tcg/cpu-v7m.c
/openbmc/qemu/target/arm/tcg/cpu32.c
/openbmc/qemu/target/arm/tcg/helper-a64.c
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/mte_helper.c
/openbmc/qemu/target/arm/tcg/op_helper.c
/openbmc/qemu/target/arm/tcg/sve_helper.c
/openbmc/qemu/target/arm/tcg/tlb-insns.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-a64.h
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/avr/cpu.c
/openbmc/qemu/target/avr/helper.c
/openbmc/qemu/target/hexagon/cpu.c
/openbmc/qemu/target/hexagon/cpu.h
/openbmc/qemu/target/hppa/cpu.c
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/helper.c
/openbmc/qemu/target/i386/hvf/hvf-cpu.c
/openbmc/qemu/target/i386/hvf/x86_decode.c
/openbmc/qemu/target/i386/kvm/hyperv-proto.h
/openbmc/qemu/target/i386/kvm/kvm-cpu.c
/openbmc/qemu/target/i386/machine.c
/openbmc/qemu/target/i386/nvmm/nvmm-accel-ops.c
/openbmc/qemu/target/i386/tcg/fpu_helper.c
/openbmc/qemu/target/i386/tcg/misc_helper.c
/openbmc/qemu/target/i386/tcg/system/excp_helper.c
/openbmc/qemu/target/i386/tcg/system/misc_helper.c
/openbmc/qemu/target/i386/tcg/system/svm_helper.c
/openbmc/qemu/target/i386/tcg/tcg-cpu.c
/openbmc/qemu/target/i386/whpx/whpx-accel-ops.c
/openbmc/qemu/target/i386/whpx/whpx-apic.c
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/helper.h
/openbmc/qemu/target/loongarch/internals.h
/openbmc/qemu/target/loongarch/tcg/csr_helper.c
/openbmc/qemu/target/loongarch/tcg/insn_trans/trans_privileged.c.inc
/openbmc/qemu/target/loongarch/tcg/tlb_helper.c
/openbmc/qemu/target/m68k/cpu.c
/openbmc/qemu/target/m68k/helper.c
/openbmc/qemu/target/microblaze/cpu.c
/openbmc/qemu/target/microblaze/cpu.h
/openbmc/qemu/target/microblaze/gdbstub.c
/openbmc/qemu/target/microblaze/helper.c
/openbmc/qemu/target/microblaze/mmu.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/mips/cpu.c
/openbmc/qemu/target/mips/internal.h
/openbmc/qemu/target/mips/system/cp0.c
/openbmc/qemu/target/mips/tcg/msa_helper.c
/openbmc/qemu/target/mips/tcg/system/cp0_helper.c
/openbmc/qemu/target/mips/tcg/system/tlb_helper.c
/openbmc/qemu/target/openrisc/cpu.c
/openbmc/qemu/target/openrisc/gdbstub.c
/openbmc/qemu/target/openrisc/mmu.c
/openbmc/qemu/target/openrisc/sys_helper.c
/openbmc/qemu/target/ppc/cpu.c
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/ppc/excp_helper.c
/openbmc/qemu/target/ppc/helper.h
/openbmc/qemu/target/ppc/helper_regs.c
/openbmc/qemu/target/ppc/internal.h
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/kvm_ppc.h
/openbmc/qemu/target/ppc/machine.c
/openbmc/qemu/target/ppc/meson.build
/openbmc/qemu/target/ppc/misc_helper.c
/openbmc/qemu/target/ppc/mmu-radix64.c
/openbmc/qemu/target/ppc/mmu_helper.c
/openbmc/qemu/target/ppc/spr_common.h
/openbmc/qemu/target/ppc/tcg-excp_helper.c
/openbmc/qemu/target/ppc/translate.c
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu.h
/openbmc/qemu/target/riscv/cpu_helper.c
/openbmc/qemu/target/riscv/csr.c
/openbmc/qemu/target/riscv/internals.h
/openbmc/qemu/target/riscv/kvm/kvm-cpu.c
/openbmc/qemu/target/riscv/op_helper.c
/openbmc/qemu/target/riscv/pmp.c
/openbmc/qemu/target/riscv/tcg/tcg-cpu.c
/openbmc/qemu/target/rx/cpu.c
/openbmc/qemu/target/rx/cpu.h
/openbmc/qemu/target/rx/helper.c
/openbmc/qemu/target/rx/helper.h
/openbmc/qemu/target/s390x/cpu-system.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/gdbstub.c
/openbmc/qemu/target/s390x/interrupt.c
/openbmc/qemu/target/s390x/s390x-internal.h
/openbmc/qemu/target/s390x/sigp.c
/openbmc/qemu/target/s390x/tcg/excp_helper.c
/openbmc/qemu/target/s390x/tcg/mem_helper.c
/openbmc/qemu/target/s390x/tcg/misc_helper.c
/openbmc/qemu/target/sh4/cpu.c
/openbmc/qemu/target/sh4/helper.c
/openbmc/qemu/target/sparc/cpu.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/sparc/ldst_helper.c
/openbmc/qemu/target/sparc/mmu_helper.c
/openbmc/qemu/target/tricore/cpu.c
/openbmc/qemu/target/tricore/cpu.h
/openbmc/qemu/target/tricore/helper.c
/openbmc/qemu/target/xtensa/cpu.c
/openbmc/qemu/target/xtensa/cpu.h
/openbmc/qemu/target/xtensa/helper.c
/openbmc/qemu/target/xtensa/mmu_helper.c
/openbmc/qemu/tests/docker/dockerfiles/alpine.docker
/openbmc/qemu/tests/docker/dockerfiles/centos9.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-amd64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-arm64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-armhf-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-i686-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mips64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-mipsel-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ppc64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-s390x-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora-rust-nightly.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora-win64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora.docker
/openbmc/qemu/tests/docker/dockerfiles/opensuse-leap.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu2204.docker
/openbmc/qemu/tests/functional/aspeed.py
/openbmc/qemu/tests/functional/meson.build
/openbmc/qemu/tests/functional/qemu_test/__init__.py
/openbmc/qemu/tests/functional/qemu_test/asset.py
/openbmc/qemu/tests/functional/qemu_test/config.py
/openbmc/qemu/tests/functional/qemu_test/linuxkernel.py
/openbmc/qemu/tests/functional/qemu_test/testcase.py
/openbmc/qemu/tests/functional/qemu_test/tuxruntest.py
/openbmc/qemu/tests/functional/qemu_test/uncompress.py
/openbmc/qemu/tests/functional/test_aarch64_aspeed.py
/openbmc/qemu/tests/functional/test_aarch64_rme_sbsaref.py
/openbmc/qemu/tests/functional/test_aarch64_rme_virt.py
/openbmc/qemu/tests/functional/test_aarch64_tcg_plugins.py
/openbmc/qemu/tests/functional/test_aarch64_virt.py
/openbmc/qemu/tests/functional/test_aarch64_virt_gpu.py
/openbmc/qemu/tests/functional/test_arm_aspeed_bletchley.py
/openbmc/qemu/tests/functional/test_arm_aspeed_palmetto.py
/openbmc/qemu/tests/functional/test_arm_aspeed_romulus.py
/openbmc/qemu/tests/functional/test_arm_aspeed_witherspoon.py
/openbmc/qemu/tests/functional/test_arm_sx1.py
/openbmc/qemu/tests/functional/test_intel_iommu.py
/openbmc/qemu/tests/functional/test_mem_addr_space.py
/openbmc/qemu/tests/functional/test_mips_malta.py
/openbmc/qemu/tests/functional/test_ppc64_e500.py
/openbmc/qemu/tests/functional/test_ppc64_tuxrun.py
/openbmc/qemu/tests/functional/test_virtio_balloon.py
/openbmc/qemu/tests/lcitool/libvirt-ci
/openbmc/qemu/tests/lcitool/projects/qemu.yml
/openbmc/qemu/tests/lcitool/refresh
/openbmc/qemu/tests/qapi-schema/doc-good.out
/openbmc/qemu/tests/qapi-schema/test-qapi.py
/openbmc/qemu/tests/qemu-iotests/051.pc.out
/openbmc/qemu/tests/qemu-iotests/162
/openbmc/qemu/tests/qemu-iotests/302
/openbmc/qemu/tests/qemu-iotests/tests/qsd-migrate
/openbmc/qemu/tests/qtest/m48t59-test.c
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/pnv-spi-seeprom-test.c
/openbmc/qemu/tests/qtest/pnv-xive2-common.h
/openbmc/qemu/tests/qtest/pnv-xive2-flush-sync.c
/openbmc/qemu/tests/qtest/pnv-xive2-nvpg_bar.c
/openbmc/qemu/tests/qtest/pnv-xive2-test.c
/openbmc/qemu/tests/qtest/rs5c372-test.c
/openbmc/qemu/tests/tcg/aarch64/Makefile.target
/openbmc/qemu/tests/tcg/arm/Makefile.target
/openbmc/qemu/tests/tcg/i386/Makefile.target
/openbmc/qemu/tests/tcg/i386/test-avx.c
/openbmc/qemu/tests/tcg/i386/test-i386-adcox.c
/openbmc/qemu/tests/tcg/multiarch/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/linux/test-vma.c
/openbmc/qemu/tests/tcg/plugins/meson.build
/openbmc/qemu/tests/unit/test-bdrv-drain.c
/openbmc/qemu/tests/unit/test-block-iothread.c
/openbmc/qemu/tests/unit/test-thread-pool.c
/openbmc/qemu/tests/vm/basevm.py
/openbmc/qemu/tests/vm/generated/freebsd.json
/openbmc/qemu/trace/control-target.c
/openbmc/qemu/trace/meson.build
/openbmc/qemu/util/aio-posix.c
/openbmc/qemu/util/aio-posix.h
/openbmc/qemu/util/async.c
/openbmc/qemu/util/cacheflush.c
/openbmc/qemu/util/iov.c
/openbmc/qemu/util/qemu-thread-posix.c
/openbmc/qemu/util/qemu-timer.c
/openbmc/qemu/util/thread-pool.c
/openbmc/qemu/util/trace-events
094cd35913-Dec-2024 Paolo Bonzini <pbonzini@redhat.com>

rust: qom: remove operations on &mut

The dubious casts of mutable references to objects are not used
anymore: the wrappers for qdev_init_clock_in and for IRQ and MMIO
initialization can be called di

rust: qom: remove operations on &mut

The dubious casts of mutable references to objects are not used
anymore: the wrappers for qdev_init_clock_in and for IRQ and MMIO
initialization can be called directly on the subclasses, without
casts, plus they take a shared reference so they can just use
"upcast()" instead of "upcast_mut()". Remove them.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

5778ce9914-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: cell: add full example of declaring a SysBusDevice

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

2d0050cb14-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: chardev: provide basic bindings to character devices

Most of the character device API is pretty simple, with "0 or -errno"
or "number of bytes or -errno" as the convention for return codes.
Ad

rust: chardev: provide basic bindings to character devices

Most of the character device API is pretty simple, with "0 or -errno"
or "number of bytes or -errno" as the convention for return codes.
Add safe wrappers for the API to the CharBackend bindgen-generated
struct.

The API is not complete, but it covers the parts that are used
by the PL011 device, plus qemu_chr_fe_write which is needed to
implement the standard library Write trait.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

2ad011d414-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: bindings: remove more unnecessary Send/Sync impls

Send and Sync are now implemented on the opaque wrappers. Remove them
from the bindings module, unless the structs are pure data containers
a

rust: bindings: remove more unnecessary Send/Sync impls

Send and Sync are now implemented on the opaque wrappers. Remove them
from the bindings module, unless the structs are pure data containers
and/or have no C functions defined on them.

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

4862751014-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: chardev: wrap Chardev with Opaque<>

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

af0868cb14-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: memory: wrap MemoryRegion with Opaque<>

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

f4751c7a14-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: sysbus: wrap SysBusDevice with Opaque<>

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

09fda8f525-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: hpet: do not access fields of SysBusDevice

Fields of SysBusDevice must only be accessed with the BQL taken. Add
a wrapper that verifies that.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.co

rust: hpet: do not access fields of SysBusDevice

Fields of SysBusDevice must only be accessed with the BQL taken. Add
a wrapper that verifies that.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...

fc22d65014-Feb-2025 Paolo Bonzini <pbonzini@redhat.com>

rust: qdev: wrap Clock and DeviceState with Opaque<>

Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

123456