
CPU watchpoints can be use by non-TCG accelerators. KVM uses them: $ git grep CPUWatchpoint|fgrep kvm target/arm/kvm64.c:1558: CPUWatchpoint *wp = find_hw_watchpoint(cs, debug_exit->far); target/i386/kvm/kvm.c:5216:static CPUWatchpoint hw_watchpoint; target/ppc/kvm.c:443:static CPUWatchpoint hw_watchpoint; target/s390x/kvm/kvm.c:139:static CPUWatchpoint hw_watchpoint; See for example commit e4482ab7e3 ("target-arm: kvm - add support for HW assisted debug"): This adds basic support for HW assisted debug. The ioctl interface to KVM allows us to pass an implementation defined number of break and watch point registers. [...] This partially reverts commit 2609ec2868e6c286e755a73b4504714a0296a. Fixes: 2609ec2868 ("softmmu: Extract watchpoint API from physmem.c") Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230328173117.15226-4-philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
40 lines
768 B
Meson
40 lines
768 B
Meson
specific_ss.add(when: 'CONFIG_SOFTMMU', if_true: [files(
|
|
'arch_init.c',
|
|
'ioport.c',
|
|
'memory.c',
|
|
'physmem.c',
|
|
'qtest.c',
|
|
'dirtylimit.c',
|
|
'watchpoint.c',
|
|
)])
|
|
|
|
specific_ss.add(when: ['CONFIG_SOFTMMU', 'CONFIG_TCG'], if_true: [files(
|
|
'icount.c',
|
|
)])
|
|
|
|
softmmu_ss.add(files(
|
|
'balloon.c',
|
|
'bootdevice.c',
|
|
'cpus.c',
|
|
'cpu-throttle.c',
|
|
'cpu-timers.c',
|
|
'datadir.c',
|
|
'dma-helpers.c',
|
|
'globals.c',
|
|
'memory_mapping.c',
|
|
'qdev-monitor.c',
|
|
'rtc.c',
|
|
'runstate-action.c',
|
|
'runstate-hmp-cmds.c',
|
|
'runstate.c',
|
|
'tpm-hmp-cmds.c',
|
|
'vl.c',
|
|
), sdl, libpmem, libdaxctl)
|
|
|
|
if have_tpm
|
|
softmmu_ss.add(files('tpm.c'))
|
|
endif
|
|
|
|
softmmu_ss.add(when: seccomp, if_true: files('qemu-seccomp.c'))
|
|
softmmu_ss.add(when: fdt, if_true: files('device_tree.c'))
|