[PATCH v2 0/2] linux-user: add a syscall-filter plugin API

Ziyang Zhang posted 2 patches 1 day, 12 hours ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20251212141541.1792111-1-functioner@sjtu.edu.cn
Maintainers: Riku Voipio <riku.voipio@iki.fi>, Laurent Vivier <laurent@vivier.eu>, "Alex Bennée" <alex.bennee@linaro.org>, Alexandre Iooss <erdnaxe@crans.org>, Mahmoud Mandour <ma.mandourr@gmail.com>, Pierrick Bouvier <pierrick.bouvier@linaro.org>
include/qemu/plugin-event.h                   |  1 +
include/qemu/plugin.h                         | 31 +++++++++++-----
include/qemu/qemu-plugin.h                    | 24 +++++++++++++
include/user/syscall-trace.h                  | 17 +++++++++
linux-user/syscall.c                          |  7 ++--
plugins/api.c                                 |  7 ++++
plugins/core.c                                | 36 +++++++++++++++++++
tests/tcg/multiarch/Makefile.target           |  4 ++-
.../multiarch/test-plugin-syscall-filter.c    | 20 +++++++++++
tests/tcg/plugins/syscall.c                   | 15 ++++++++
10 files changed, 150 insertions(+), 12 deletions(-)
create mode 100644 tests/tcg/multiarch/test-plugin-syscall-filter.c
[PATCH v2 0/2] linux-user: add a syscall-filter plugin API
Posted by Ziyang Zhang 1 day, 12 hours ago
We have resolved the merge conflict of the PATCH v1 [1], rebased on
the latest (9c23f2a7b0b45277693a14074b1aaa827eecdb92).

PATCH v2:
  1. Rebased on newest version of master

PATCH v1:
  1. Format the code

RFC v2:
  1. Simplify the syscall filter mechanism and remove fork-cpu
  2. Add QEMU_PLUGIN_EV_VCPU_SYSCALL_FILTER enum

RFC v1:
  1. Add syscall filter registry
  2. Add fork-cpu interface to re-enter cpu_loop when handling syscalls

[1] https://lore.kernel.org/qemu-devel/20251110133442.579086-1-functioner@sjtu.edu.cn/

Ziyang Zhang (2):
  linux-user: add a plugin API to filter syscalls
  tcg tests: add a test to verify the syscall filter plugin API

 include/qemu/plugin-event.h                   |  1 +
 include/qemu/plugin.h                         | 31 +++++++++++-----
 include/qemu/qemu-plugin.h                    | 24 +++++++++++++
 include/user/syscall-trace.h                  | 17 +++++++++
 linux-user/syscall.c                          |  7 ++--
 plugins/api.c                                 |  7 ++++
 plugins/core.c                                | 36 +++++++++++++++++++
 tests/tcg/multiarch/Makefile.target           |  4 ++-
 .../multiarch/test-plugin-syscall-filter.c    | 20 +++++++++++
 tests/tcg/plugins/syscall.c                   | 15 ++++++++
 10 files changed, 150 insertions(+), 12 deletions(-)
 create mode 100644 tests/tcg/multiarch/test-plugin-syscall-filter.c

-- 
2.34.1