From: Thomas Huth <thuth@redhat.com> To: Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org Cc: Eduardo Habkost <ehabkost@redhat.com>, Helge Deller <deller@gmx.de>, Eduardo Otubo <otubo@redhat.com> Subject: [Qemu-devel] [PULL 2/8] qtest: Move accel code to accel/qtest.c Date: Thu, 2 May 2019 18:13:04 +0200 [thread overview] Message-ID: <20190502161310.15624-3-thuth@redhat.com> (raw) In-Reply-To: <20190502161310.15624-1-thuth@redhat.com> From: Eduardo Habkost <ehabkost@redhat.com> QTest has two parts: the server (-qtest) and the accelerator (-machine accel=qtest). The accelerator depends on CONFIG_POSIX due to its usage of sigwait(), but the server doesn't. Move the accel code to accel/qtest.c. Later we will disable compilation of accel/qtest.c on non-POSIX systems. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Message-Id: <20190422210448.2488-2-ehabkost@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> [thuth: added fixup for MAINTAINERS file] Signed-off-by: Thomas Huth <thuth@redhat.com> --- MAINTAINERS | 1 + accel/Makefile.objs | 1 + accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++ qtest.c | 34 ---------------------------- 4 files changed, 57 insertions(+), 34 deletions(-) create mode 100644 accel/qtest.c diff --git a/MAINTAINERS b/MAINTAINERS index 7dd71e0a2d..66ddbda9c9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2035,6 +2035,7 @@ M: Laurent Vivier <lvivier@redhat.com> R: Paolo Bonzini <pbonzini@redhat.com> S: Maintained F: qtest.c +F: accel/qtest.c F: tests/libqtest.* F: tests/libqos/ F: tests/*-test.c diff --git a/accel/Makefile.objs b/accel/Makefile.objs index c3718a10c5..2a5ed46940 100644 --- a/accel/Makefile.objs +++ b/accel/Makefile.objs @@ -1,4 +1,5 @@ obj-$(CONFIG_SOFTMMU) += accel.o +obj-$(CONFIG_SOFTMMU) += qtest.o obj-$(CONFIG_KVM) += kvm/ obj-$(CONFIG_TCG) += tcg/ obj-y += stubs/ diff --git a/accel/qtest.c b/accel/qtest.c new file mode 100644 index 0000000000..a02b3c26c7 --- /dev/null +++ b/accel/qtest.c @@ -0,0 +1,55 @@ +/* + * QTest accelerator code + * + * Copyright IBM, Corp. 2011 + * + * Authors: + * Anthony Liguori <aliguori@us.ibm.com> + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + * + */ + +#include "qemu/osdep.h" +#include "qapi/error.h" +#include "qemu/module.h" +#include "qemu/option.h" +#include "qemu/config-file.h" +#include "sysemu/accel.h" +#include "sysemu/qtest.h" +#include "sysemu/cpus.h" + +static int qtest_init_accel(MachineState *ms) +{ + QemuOpts *opts = qemu_opts_create(qemu_find_opts("icount"), NULL, 0, + &error_abort); + qemu_opt_set(opts, "shift", "0", &error_abort); + configure_icount(opts, &error_abort); + qemu_opts_del(opts); + return 0; +} + +static void qtest_accel_class_init(ObjectClass *oc, void *data) +{ + AccelClass *ac = ACCEL_CLASS(oc); + ac->name = "QTest"; + ac->available = qtest_available; + ac->init_machine = qtest_init_accel; + ac->allowed = &qtest_allowed; +} + +#define TYPE_QTEST_ACCEL ACCEL_CLASS_NAME("qtest") + +static const TypeInfo qtest_accel_type = { + .name = TYPE_QTEST_ACCEL, + .parent = TYPE_ACCEL, + .class_init = qtest_accel_class_init, +}; + +static void qtest_type_init(void) +{ + type_register_static(&qtest_accel_type); +} + +type_init(qtest_type_init); diff --git a/qtest.c b/qtest.c index 527141785f..f2e2f27778 100644 --- a/qtest.c +++ b/qtest.c @@ -749,16 +749,6 @@ static void qtest_event(void *opaque, int event) } } -static int qtest_init_accel(MachineState *ms) -{ - QemuOpts *opts = qemu_opts_create(qemu_find_opts("icount"), NULL, 0, - &error_abort); - qemu_opt_set(opts, "shift", "0", &error_abort); - configure_icount(opts, &error_abort); - qemu_opts_del(opts); - return 0; -} - void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp) { Chardev *chr; @@ -791,27 +781,3 @@ bool qtest_driver(void) { return qtest_chr.chr != NULL; } - -static void qtest_accel_class_init(ObjectClass *oc, void *data) -{ - AccelClass *ac = ACCEL_CLASS(oc); - ac->name = "QTest"; - ac->available = qtest_available; - ac->init_machine = qtest_init_accel; - ac->allowed = &qtest_allowed; -} - -#define TYPE_QTEST_ACCEL ACCEL_CLASS_NAME("qtest") - -static const TypeInfo qtest_accel_type = { - .name = TYPE_QTEST_ACCEL, - .parent = TYPE_ACCEL, - .class_init = qtest_accel_class_init, -}; - -static void qtest_type_init(void) -{ - type_register_static(&qtest_accel_type); -} - -type_init(qtest_type_init); -- 2.21.0
WARNING: multiple messages have this Message-ID (diff)
From: Thomas Huth <thuth@redhat.com> To: Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org Cc: Eduardo Otubo <otubo@redhat.com>, Helge Deller <deller@gmx.de>, Eduardo Habkost <ehabkost@redhat.com> Subject: [Qemu-devel] [PULL 2/8] qtest: Move accel code to accel/qtest.c Date: Thu, 2 May 2019 18:13:04 +0200 [thread overview] Message-ID: <20190502161310.15624-3-thuth@redhat.com> (raw) Message-ID: <20190502161304.Hxfmy3CX1rBUwBtZVzl0foE4k_Ufa5dRGHd3Bf1H1B8@z> (raw) In-Reply-To: <20190502161310.15624-1-thuth@redhat.com> From: Eduardo Habkost <ehabkost@redhat.com> QTest has two parts: the server (-qtest) and the accelerator (-machine accel=qtest). The accelerator depends on CONFIG_POSIX due to its usage of sigwait(), but the server doesn't. Move the accel code to accel/qtest.c. Later we will disable compilation of accel/qtest.c on non-POSIX systems. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Message-Id: <20190422210448.2488-2-ehabkost@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> [thuth: added fixup for MAINTAINERS file] Signed-off-by: Thomas Huth <thuth@redhat.com> --- MAINTAINERS | 1 + accel/Makefile.objs | 1 + accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++ qtest.c | 34 ---------------------------- 4 files changed, 57 insertions(+), 34 deletions(-) create mode 100644 accel/qtest.c diff --git a/MAINTAINERS b/MAINTAINERS index 7dd71e0a2d..66ddbda9c9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2035,6 +2035,7 @@ M: Laurent Vivier <lvivier@redhat.com> R: Paolo Bonzini <pbonzini@redhat.com> S: Maintained F: qtest.c +F: accel/qtest.c F: tests/libqtest.* F: tests/libqos/ F: tests/*-test.c diff --git a/accel/Makefile.objs b/accel/Makefile.objs index c3718a10c5..2a5ed46940 100644 --- a/accel/Makefile.objs +++ b/accel/Makefile.objs @@ -1,4 +1,5 @@ obj-$(CONFIG_SOFTMMU) += accel.o +obj-$(CONFIG_SOFTMMU) += qtest.o obj-$(CONFIG_KVM) += kvm/ obj-$(CONFIG_TCG) += tcg/ obj-y += stubs/ diff --git a/accel/qtest.c b/accel/qtest.c new file mode 100644 index 0000000000..a02b3c26c7 --- /dev/null +++ b/accel/qtest.c @@ -0,0 +1,55 @@ +/* + * QTest accelerator code + * + * Copyright IBM, Corp. 2011 + * + * Authors: + * Anthony Liguori <aliguori@us.ibm.com> + * + * This work is licensed under the terms of the GNU GPL, version 2 or later. + * See the COPYING file in the top-level directory. + * + */ + +#include "qemu/osdep.h" +#include "qapi/error.h" +#include "qemu/module.h" +#include "qemu/option.h" +#include "qemu/config-file.h" +#include "sysemu/accel.h" +#include "sysemu/qtest.h" +#include "sysemu/cpus.h" + +static int qtest_init_accel(MachineState *ms) +{ + QemuOpts *opts = qemu_opts_create(qemu_find_opts("icount"), NULL, 0, + &error_abort); + qemu_opt_set(opts, "shift", "0", &error_abort); + configure_icount(opts, &error_abort); + qemu_opts_del(opts); + return 0; +} + +static void qtest_accel_class_init(ObjectClass *oc, void *data) +{ + AccelClass *ac = ACCEL_CLASS(oc); + ac->name = "QTest"; + ac->available = qtest_available; + ac->init_machine = qtest_init_accel; + ac->allowed = &qtest_allowed; +} + +#define TYPE_QTEST_ACCEL ACCEL_CLASS_NAME("qtest") + +static const TypeInfo qtest_accel_type = { + .name = TYPE_QTEST_ACCEL, + .parent = TYPE_ACCEL, + .class_init = qtest_accel_class_init, +}; + +static void qtest_type_init(void) +{ + type_register_static(&qtest_accel_type); +} + +type_init(qtest_type_init); diff --git a/qtest.c b/qtest.c index 527141785f..f2e2f27778 100644 --- a/qtest.c +++ b/qtest.c @@ -749,16 +749,6 @@ static void qtest_event(void *opaque, int event) } } -static int qtest_init_accel(MachineState *ms) -{ - QemuOpts *opts = qemu_opts_create(qemu_find_opts("icount"), NULL, 0, - &error_abort); - qemu_opt_set(opts, "shift", "0", &error_abort); - configure_icount(opts, &error_abort); - qemu_opts_del(opts); - return 0; -} - void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp) { Chardev *chr; @@ -791,27 +781,3 @@ bool qtest_driver(void) { return qtest_chr.chr != NULL; } - -static void qtest_accel_class_init(ObjectClass *oc, void *data) -{ - AccelClass *ac = ACCEL_CLASS(oc); - ac->name = "QTest"; - ac->available = qtest_available; - ac->init_machine = qtest_init_accel; - ac->allowed = &qtest_allowed; -} - -#define TYPE_QTEST_ACCEL ACCEL_CLASS_NAME("qtest") - -static const TypeInfo qtest_accel_type = { - .name = TYPE_QTEST_ACCEL, - .parent = TYPE_ACCEL, - .class_init = qtest_accel_class_init, -}; - -static void qtest_type_init(void) -{ - type_register_static(&qtest_accel_type); -} - -type_init(qtest_type_init); -- 2.21.0
next prev parent reply other threads:[~2019-05-02 16:13 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-05-02 16:13 [Qemu-devel] [PULL 0/8] qtest and misc patches Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 1/8] gitlab-ci.yml: Test the TCG interpreter in a CI pipeline Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` Thomas Huth [this message] 2019-05-02 16:13 ` [Qemu-devel] [PULL 2/8] qtest: Move accel code to accel/qtest.c Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 3/8] qtest: Don't compile qtest accel on non-POSIX systems Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 4/8] accel: Remove unused AccelClass::available field Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 5/8] configure: Add -Wno-typedef-redefinition to CFLAGS (for Clang) Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 6/8] configure: Remove old *-config-devices.mak.d files when running configure Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 7/8] configure: Relax check for libseccomp Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-02 16:13 ` [Qemu-devel] [PULL 8/8] hw/pci-host: Use object_initialize_child for correct reference counting Thomas Huth 2019-05-02 16:13 ` Thomas Huth 2019-05-03 9:37 ` [Qemu-devel] [PULL 0/8] qtest and misc patches Peter Maydell 2019-05-03 9:37 ` Peter Maydell
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190502161310.15624-3-thuth@redhat.com \ --to=thuth@redhat.com \ --cc=deller@gmx.de \ --cc=ehabkost@redhat.com \ --cc=otubo@redhat.com \ --cc=peter.maydell@linaro.org \ --cc=qemu-devel@nongnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).