]> www.infradead.org Git - users/dwmw2/qemu.git/commit
plugins: define qemu_plugin_u64
authorPierrick Bouvier <pierrick.bouvier@linaro.org>
Tue, 5 Mar 2024 12:09:51 +0000 (12:09 +0000)
committerAlex Bennée <alex.bennee@linaro.org>
Wed, 6 Mar 2024 12:35:23 +0000 (12:35 +0000)
commit8042e2eadfd61dcdae321c3632f06d188521bdf5
treefc27f015b482beb6e8e18f0edca13bfd2c7b27b1
parenta3c2cf0b891d00ef502e9902baa9fb7fe1f8e7a3
plugins: define qemu_plugin_u64

Additionally to the scoreboard, we define a qemu_plugin_u64, which is a
simple struct holding a pointer to a scoreboard, and a given offset.
This allows to have a scoreboard containing structs, without having to
bring offset to operate on a specific field.

Since most of the plugins are simply collecting a sum of per-cpu values,
qemu_plugin_u64 directly support this operation as well.

All inline operations defined later will use a qemu_plugin_u64 as input.

New functions:
- qemu_plugin_u64_add
- qemu_plugin_u64_get
- qemu_plugin_u64_set
- qemu_plugin_u64_sum
New macros:
- qemu_plugin_scoreboard_u64
- qemu_plugin_scoreboard_u64_in_struct

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20240304130036.124418-3-pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240305121005.3528075-16-alex.bennee@linaro.org>
include/qemu/qemu-plugin.h
plugins/api.c
plugins/qemu-plugins.symbols