[PATCH v3 0/2] plugins: add plugin API to read guest memory

Rowan Hart posted 2 patches 2 months, 4 weeks ago
docs/about/emulation.rst     |  14 ++++-
include/qemu/qemu-plugin.h   |  32 +++++++++-
plugins/api.c                |  20 ++++++
plugins/qemu-plugins.symbols |   1 +
tests/tcg/plugins/syscall.c  | 117 +++++++++++++++++++++++++++++++++++
5 files changed, 182 insertions(+), 2 deletions(-)
[PATCH v3 0/2] plugins: add plugin API to read guest memory
Posted by Rowan Hart 2 months, 4 weeks ago
This patch adds one API function to the QEMU plugin API

bool qemu_plugin_read_memory_vaddr(vaddr, GByteArray *, size_t);

The API allows reading memory from an arbitrary guest virtual
address, which is useful for many things but the motivating examples
are:

* Virtual Machine Introspection (VMI)
* Accurate and easier execution trace extraction
* Debugging and logging tools

An example of its use is added to the existing syscalls plugin,
which now has an option to hexdump the buf argument to any write(2)
syscalls which occur.

For v3, fixed a missing '*' in a comment which caused a doc build issue.

Rowan Hart (2):
  plugins: add plugin API to read guest memory
  plugins: add option to dump write argument to syscall plugin

 docs/about/emulation.rst     |  14 ++++-
 include/qemu/qemu-plugin.h   |  32 +++++++++-
 plugins/api.c                |  20 ++++++
 plugins/qemu-plugins.symbols |   1 +
 tests/tcg/plugins/syscall.c  | 117 +++++++++++++++++++++++++++++++++++
 5 files changed, 182 insertions(+), 2 deletions(-)

-- 
2.46.0
Re: [PATCH v3 0/2] plugins: add plugin API to read guest memory
Posted by Alex Bennée 2 months, 2 weeks ago
Rowan Hart <rowanbhart@gmail.com> writes:

> This patch adds one API function to the QEMU plugin API
>
> bool qemu_plugin_read_memory_vaddr(vaddr, GByteArray *, size_t);
>
> The API allows reading memory from an arbitrary guest virtual
> address, which is useful for many things but the motivating examples
> are:

Queued to plugins/next with a minor tweak to the cpu_memory_rw_debug
call.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro