qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio
at master 54 lines 1.3 kB view raw
1/* 2 * QTest accelerator code 3 * 4 * Copyright IBM, Corp. 2011 5 * 6 * Authors: 7 * Anthony Liguori <aliguori@us.ibm.com> 8 * 9 * This work is licensed under the terms of the GNU GPL, version 2 or later. 10 * See the COPYING file in the top-level directory. 11 * 12 */ 13 14#include "qemu/osdep.h" 15#include "qapi/error.h" 16#include "qemu/module.h" 17#include "qemu/option.h" 18#include "qemu/config-file.h" 19#include "sysemu/accel.h" 20#include "sysemu/qtest.h" 21#include "sysemu/cpus.h" 22 23static int qtest_init_accel(MachineState *ms) 24{ 25 QemuOpts *opts = qemu_opts_create(qemu_find_opts("icount"), NULL, 0, 26 &error_abort); 27 qemu_opt_set(opts, "shift", "0", &error_abort); 28 configure_icount(opts, &error_abort); 29 qemu_opts_del(opts); 30 return 0; 31} 32 33static void qtest_accel_class_init(ObjectClass *oc, void *data) 34{ 35 AccelClass *ac = ACCEL_CLASS(oc); 36 ac->name = "QTest"; 37 ac->init_machine = qtest_init_accel; 38 ac->allowed = &qtest_allowed; 39} 40 41#define TYPE_QTEST_ACCEL ACCEL_CLASS_NAME("qtest") 42 43static const TypeInfo qtest_accel_type = { 44 .name = TYPE_QTEST_ACCEL, 45 .parent = TYPE_ACCEL, 46 .class_init = qtest_accel_class_init, 47}; 48 49static void qtest_type_init(void) 50{ 51 type_register_static(&qtest_accel_type); 52} 53 54type_init(qtest_type_init);