Rowan Hart <rowanbh...@gmail.com> writes: > This patch series adds several new API functions focused on enabling use > cases around reading and writing guest memory from QEMU plugins. To support > these new APIs, some utility functionality around retrieving information about > address spaces is added as well.
I think we are almost there but I ran into a problem with the test: ➜ make run-tcg-tests-x86_64-softmmu BUILD x86_64-softmmu guest-tests RUN x86_64-softmmu guest-tests TEST hello on x86_64 TEST interrupt on x86_64 TEST memory on x86_64 TEST hello-with-libbb.so on x86_64 TEST interrupt-with-libbb.so on x86_64 TEST memory-with-libbb.so on x86_64 TEST hello-with-libempty.so on x86_64 TEST interrupt-with-libempty.so on x86_64 TEST memory-with-libempty.so on x86_64 TEST hello-with-libinline.so on x86_64 TEST interrupt-with-libinline.so on x86_64 TEST memory-with-libinline.so on x86_64 TEST hello-with-libinsn.so on x86_64 TEST interrupt-with-libinsn.so on x86_64 TEST memory-with-libinsn.so on x86_64 TEST hello-with-libmem.so on x86_64 TEST interrupt-with-libmem.so on x86_64 TEST memory-with-libmem.so on x86_64 TEST check plugin libmem.so output with memory TEST hello-with-libreset.so on x86_64 TEST interrupt-with-libreset.so on x86_64 TEST memory-with-libreset.so on x86_64 TEST hello-with-libsyscall.so on x86_64 TEST interrupt-with-libsyscall.so on x86_64 TEST memory-with-libsyscall.so on x86_64 TEST softmmu gdbstub support on x86_64 qemu-system-x86_64: -gdb unix:path=/tmp/tmp01eq35b3qemu-gdbstub/gdbstub.socket,server=on: info: QEMU waiting for connection on: disconnected:unix:/tmp/tmp01eq35b3qemu-gdbstub/gdbstub.socket,server=on qemu-system-x86_64: QEMU: Terminated via GDBstub TEST softmmu gdbstub support on x86_64 qemu-system-x86_64: -gdb unix:path=/tmp/tmp4wf7k1fwqemu-gdbstub/gdbstub.socket,server=on: info: QEMU waiting for connection on: disconnected:unix:/tmp/tmp4wf7k1fwqemu-gdbstub/gdbstub.socket,server=on qemu-system-x86_64: QEMU: Terminated via GDBstub TEST softmmu gdbstub untimely packets on x86_64 qemu-system-x86_64: -gdb unix:path=/tmp/tmpnagp6w_mqemu-gdbstub/gdbstub.socket,server=on: info: QEMU waiting for connection on: disconnected:unix:/tmp/tmpnagp6w_mqemu-gdbstub/gdbstub.socket,server=on GREP file untimely-packet.gdb.err TEST softmmu gdbstub support on x86_64 qemu-system-x86_64: -gdb unix:path=/tmp/tmpnkn1fbmsqemu-gdbstub/gdbstub.socket,server=on: info: QEMU waiting for connection on: disconnected:unix:/tmp/tmpnkn1fbmsqemu-gdbstub/gdbstub.socket,server=on qemu-system-x86_64: QEMU: Terminated via GDBstub make[1]: *** No rule to make target 'patch-target', needed by 'run-plugin-patch-target-with-libpatch.so'. Stop. make: *** [/home/alex/lsrc/qemu.git/tests/Makefile.include:56: run-tcg-tests-x86_64-softmmu] Error 2 You need to ensure vpath is set, something like: modified tests/tcg/x86_64/Makefile.softmmu-target @@ -1,13 +1,11 @@ # -# x86 system tests -# -# This currently builds only for i386. The common C code is built -# with standard compiler flags however so we can support both by -# adding additional boot files for x86_64. +# x86-64 system tests # -I386_SYSTEM_SRC=$(SRC_PATH)/tests/tcg/i386/system X64_SYSTEM_SRC=$(SRC_PATH)/tests/tcg/x86_64/system +X64_SYSTEM_TESTS= $(patsubst $(X64_SYSTEM_SRC)/%.c, %, $(wildcard $(X64_SYSTEM_SRC)/*.c)) + +VPATH+=$(X64_SYSTEM_SRC) # These objects provide the basic boot code and helper functions for all tests CRT_OBJS=boot.o @@ -18,7 +16,7 @@ LDFLAGS=-Wl,-T$(LINK_SCRIPT) -Wl,-melf_x86_64 CFLAGS+=-nostdlib -ggdb -O0 $(MINILIB_INC) LDFLAGS+=-static -nostdlib $(CRT_OBJS) $(MINILIB_OBJS) -lgcc -TESTS+=$(MULTIARCH_TESTS) +TESTS+=$(X64_SYSTEM_TESTS) $(MULTIARCH_TESTS) EXTRA_RUNS+=$(MULTIARCH_RUNS) # building head blobs @@ -41,4 +39,4 @@ run-plugin-patch-target-with-libpatch.so: \ run-plugin-patch-target-with-libpatch.so: \ CHECK_PLUGIN_OUTPUT_COMMAND=$(X64_SYSTEM_SRC)/validate-patch.py $@.out run-plugin-patch-target-with-libpatch.so: patch-target libpatch.so -EXTRA_RUNS+=run-plugin-patch-target-with-libpatch.so \ No newline at end of file +EXTRA_RUNS+=run-plugin-patch-target-with-libpatch.so <snip> > > Rowan Hart (1): > plugins: Add enforcement of QEMU_PLUGIN_CB flags in register R/W > callbacks > > novafacing (6): > gdbstub: Expose gdb_write_register function to consumers of gdbstub > plugins: Add register write API > plugins: Add memory virtual address write API > plugins: Add memory hardware address read/write API > plugins: Add patcher plugin and test > plugins: Update plugin version and add notes Could you update the Author fields so the Author matches the s-o-b tags please and is consistent please. -- Alex Bennée Virtualisation Tech Lead @ Linaro