* [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field
@ 2019-04-22 21:04 Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
` (3 more replies)
0 siblings, 4 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Thomas Huth, Laurent Vivier, Paolo Bonzini
The only user of AccelClass::available was the qtest accelerator,
to make it unavailable on non-POSIX systems. We can drop the
field if we simply not compile the accelerator code on those
systems.
Eduardo Habkost (3):
qtest: Move accel code to accel/qtest.c
qtest: Don't compile qtest accel on non-POSIX systems
accel: Remove unused AccelClass::available field
include/sysemu/accel.h | 1 -
include/sysemu/qtest.h | 9 -------
accel/accel.c | 5 ----
accel/qtest.c | 54 ++++++++++++++++++++++++++++++++++++++++++
qtest.c | 34 --------------------------
accel/Makefile.objs | 1 +
6 files changed, 55 insertions(+), 49 deletions(-)
create mode 100644 accel/qtest.c
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field
2019-04-22 21:04 [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:04 ` [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c Eduardo Habkost
` (2 subsequent siblings)
3 siblings, 0 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
The only user of AccelClass::available was the qtest accelerator,
to make it unavailable on non-POSIX systems. We can drop the
field if we simply not compile the accelerator code on those
systems.
Eduardo Habkost (3):
qtest: Move accel code to accel/qtest.c
qtest: Don't compile qtest accel on non-POSIX systems
accel: Remove unused AccelClass::available field
include/sysemu/accel.h | 1 -
include/sysemu/qtest.h | 9 -------
accel/accel.c | 5 ----
accel/qtest.c | 54 ++++++++++++++++++++++++++++++++++++++++++
qtest.c | 34 --------------------------
accel/Makefile.objs | 1 +
6 files changed, 55 insertions(+), 49 deletions(-)
create mode 100644 accel/qtest.c
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 21:04 [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
` (2 more replies)
2019-04-22 21:04 ` [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems Eduardo Habkost
2019-04-22 21:04 ` [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field Eduardo Habkost
3 siblings, 3 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Thomas Huth, Laurent Vivier, Paolo Bonzini
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>
---
accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
qtest.c | 34 ----------------------------
accel/Makefile.objs | 1 +
3 files changed, 56 insertions(+), 34 deletions(-)
create mode 100644 accel/qtest.c
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);
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/
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 21:04 ` [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-23 5:07 ` Thomas Huth
2 siblings, 0 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
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>
---
accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
qtest.c | 34 ----------------------------
accel/Makefile.objs | 1 +
3 files changed, 56 insertions(+), 34 deletions(-)
create mode 100644 accel/qtest.c
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);
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/
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems
2019-04-22 21:04 [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:04 ` [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
` (2 more replies)
2019-04-22 21:04 ` [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field Eduardo Habkost
3 siblings, 3 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Thomas Huth, Laurent Vivier, Paolo Bonzini
qtest_available() will always return 0 on non-POSIX systems.
It's simpler to just not compile the accelerator code on those
systems instead of relying on the AccelClass::available function.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
include/sysemu/qtest.h | 9 ---------
accel/qtest.c | 1 -
accel/Makefile.objs | 2 +-
3 files changed, 1 insertion(+), 11 deletions(-)
diff --git a/include/sysemu/qtest.h b/include/sysemu/qtest.h
index 70aa40aa72..096ddfc20c 100644
--- a/include/sysemu/qtest.h
+++ b/include/sysemu/qtest.h
@@ -27,13 +27,4 @@ bool qtest_driver(void);
void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp);
-static inline int qtest_available(void)
-{
-#ifdef CONFIG_POSIX
- return 1;
-#else
- return 0;
-#endif
-}
-
#endif
diff --git a/accel/qtest.c b/accel/qtest.c
index a02b3c26c7..5b88f55921 100644
--- a/accel/qtest.c
+++ b/accel/qtest.c
@@ -34,7 +34,6 @@ 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;
}
diff --git a/accel/Makefile.objs b/accel/Makefile.objs
index 2a5ed46940..8b498d39d8 100644
--- a/accel/Makefile.objs
+++ b/accel/Makefile.objs
@@ -1,5 +1,5 @@
obj-$(CONFIG_SOFTMMU) += accel.o
-obj-$(CONFIG_SOFTMMU) += qtest.o
+obj-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_POSIX)) += qtest.o
obj-$(CONFIG_KVM) += kvm/
obj-$(CONFIG_TCG) += tcg/
obj-y += stubs/
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems
2019-04-22 21:04 ` [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-23 5:09 ` Thomas Huth
2 siblings, 0 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
qtest_available() will always return 0 on non-POSIX systems.
It's simpler to just not compile the accelerator code on those
systems instead of relying on the AccelClass::available function.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
include/sysemu/qtest.h | 9 ---------
accel/qtest.c | 1 -
accel/Makefile.objs | 2 +-
3 files changed, 1 insertion(+), 11 deletions(-)
diff --git a/include/sysemu/qtest.h b/include/sysemu/qtest.h
index 70aa40aa72..096ddfc20c 100644
--- a/include/sysemu/qtest.h
+++ b/include/sysemu/qtest.h
@@ -27,13 +27,4 @@ bool qtest_driver(void);
void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp);
-static inline int qtest_available(void)
-{
-#ifdef CONFIG_POSIX
- return 1;
-#else
- return 0;
-#endif
-}
-
#endif
diff --git a/accel/qtest.c b/accel/qtest.c
index a02b3c26c7..5b88f55921 100644
--- a/accel/qtest.c
+++ b/accel/qtest.c
@@ -34,7 +34,6 @@ 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;
}
diff --git a/accel/Makefile.objs b/accel/Makefile.objs
index 2a5ed46940..8b498d39d8 100644
--- a/accel/Makefile.objs
+++ b/accel/Makefile.objs
@@ -1,5 +1,5 @@
obj-$(CONFIG_SOFTMMU) += accel.o
-obj-$(CONFIG_SOFTMMU) += qtest.o
+obj-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_POSIX)) += qtest.o
obj-$(CONFIG_KVM) += kvm/
obj-$(CONFIG_TCG) += tcg/
obj-y += stubs/
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field
2019-04-22 21:04 [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field Eduardo Habkost
` (2 preceding siblings ...)
2019-04-22 21:04 ` [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
` (2 more replies)
3 siblings, 3 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Thomas Huth, Laurent Vivier, Paolo Bonzini
The field is not used anymore, we can remove it.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
include/sysemu/accel.h | 1 -
accel/accel.c | 5 -----
2 files changed, 6 deletions(-)
diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h
index 5565e00a96..70e9e2f2a1 100644
--- a/include/sysemu/accel.h
+++ b/include/sysemu/accel.h
@@ -38,7 +38,6 @@ typedef struct AccelClass {
const char *opt_name;
const char *name;
- int (*available)(void);
int (*init_machine)(MachineState *ms);
void (*setup_post)(MachineState *ms, AccelState *accel);
bool *allowed;
diff --git a/accel/accel.c b/accel/accel.c
index 454fef9d92..5fa31717b4 100644
--- a/accel/accel.c
+++ b/accel/accel.c
@@ -107,11 +107,6 @@ void configure_accelerator(MachineState *ms, const char *progname)
if (!acc) {
continue;
}
- if (acc->available && !acc->available()) {
- printf("%s not supported for this target\n",
- acc->name);
- continue;
- }
ret = accel_init_machine(acc, ms);
if (ret < 0) {
init_failed = true;
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field
2019-04-22 21:04 ` [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field Eduardo Habkost
@ 2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-23 5:09 ` Thomas Huth
2 siblings, 0 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 21:04 UTC (permalink / raw)
To: qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
The field is not used anymore, we can remove it.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
include/sysemu/accel.h | 1 -
accel/accel.c | 5 -----
2 files changed, 6 deletions(-)
diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h
index 5565e00a96..70e9e2f2a1 100644
--- a/include/sysemu/accel.h
+++ b/include/sysemu/accel.h
@@ -38,7 +38,6 @@ typedef struct AccelClass {
const char *opt_name;
const char *name;
- int (*available)(void);
int (*init_machine)(MachineState *ms);
void (*setup_post)(MachineState *ms, AccelState *accel);
bool *allowed;
diff --git a/accel/accel.c b/accel/accel.c
index 454fef9d92..5fa31717b4 100644
--- a/accel/accel.c
+++ b/accel/accel.c
@@ -107,11 +107,6 @@ void configure_accelerator(MachineState *ms, const char *progname)
if (!acc) {
continue;
}
- if (acc->available && !acc->available()) {
- printf("%s not supported for this target\n",
- acc->name);
- continue;
- }
ret = accel_init_machine(acc, ms);
if (ret < 0) {
init_failed = true;
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 21:04 ` [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
@ 2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-22 22:08 ` Eduardo Habkost
2019-04-23 5:07 ` Thomas Huth
2 siblings, 2 replies; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 21:56 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
Hi Eduardo,
On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> 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>
> ---
> accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
> qtest.c | 34 ----------------------------
> accel/Makefile.objs | 1 +
> 3 files changed, 56 insertions(+), 34 deletions(-)
> create mode 100644 accel/qtest.c
>
> 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"
Why include "qemu/module.h"?
I guess you don't need it.
> +#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);
> 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/
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 21:56 ` Philippe Mathieu-Daudé
@ 2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-22 22:08 ` Eduardo Habkost
1 sibling, 0 replies; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 21:56 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
Hi Eduardo,
On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> 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>
> ---
> accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
> qtest.c | 34 ----------------------------
> accel/Makefile.objs | 1 +
> 3 files changed, 56 insertions(+), 34 deletions(-)
> create mode 100644 accel/qtest.c
>
> 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"
Why include "qemu/module.h"?
I guess you don't need it.
> +#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);
> 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/
>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-22 21:56 ` Philippe Mathieu-Daudé
@ 2019-04-22 22:08 ` Eduardo Habkost
2019-04-22 22:08 ` Eduardo Habkost
2019-04-22 22:17 ` Philippe Mathieu-Daudé
1 sibling, 2 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 22:08 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: qemu-devel, Laurent Vivier, Paolo Bonzini, Thomas Huth
On Mon, Apr 22, 2019 at 11:56:18PM +0200, Philippe Mathieu-Daudé wrote:
> Hi Eduardo,
>
> On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> > 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.
> >
[...]
> > +#include "qemu/module.h"
>
> Why include "qemu/module.h"?
> I guess you don't need it.
That's where the type_init() macro is defined.
> > +type_init(qtest_type_init);
[...]
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Thanks!
--
Eduardo
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 22:08 ` Eduardo Habkost
@ 2019-04-22 22:08 ` Eduardo Habkost
2019-04-22 22:17 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-22 22:08 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth, qemu-devel
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="UTF-8", Size: 817 bytes --]
On Mon, Apr 22, 2019 at 11:56:18PM +0200, Philippe Mathieu-Daudé wrote:
> Hi Eduardo,
>
> On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> > 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.
> >
[...]
> > +#include "qemu/module.h"
>
> Why include "qemu/module.h"?
> I guess you don't need it.
That's where the type_init() macro is defined.
> > +type_init(qtest_type_init);
[...]
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Thanks!
--
Eduardo
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 22:08 ` Eduardo Habkost
2019-04-22 22:08 ` Eduardo Habkost
@ 2019-04-22 22:17 ` Philippe Mathieu-Daudé
2019-04-22 22:17 ` Philippe Mathieu-Daudé
1 sibling, 1 reply; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 22:17 UTC (permalink / raw)
To: Eduardo Habkost; +Cc: qemu-devel, Laurent Vivier, Paolo Bonzini, Thomas Huth
On 4/23/19 12:08 AM, Eduardo Habkost wrote:
> On Mon, Apr 22, 2019 at 11:56:18PM +0200, Philippe Mathieu-Daudé wrote:
>> Hi Eduardo,
>>
>> On 4/22/19 11:04 PM, Eduardo Habkost wrote:
>>> 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.
>>>
> [...]
>>> +#include "qemu/module.h"
>>
>> Why include "qemu/module.h"?
>> I guess you don't need it.
>
> That's where the type_init() macro is defined.
Oh correct...
I tried to remove it/compile and it worked because it is pulled by:
"sysemu/cpus.h"
-> "qemu/timer.h"
-> "qemu-common.h"
-> "qemu/module.h"
Thanks!
>>> +type_init(qtest_type_init);
> [...]
>
>
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Thanks!
>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 22:17 ` Philippe Mathieu-Daudé
@ 2019-04-22 22:17 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 22:17 UTC (permalink / raw)
To: Eduardo Habkost; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth, qemu-devel
On 4/23/19 12:08 AM, Eduardo Habkost wrote:
> On Mon, Apr 22, 2019 at 11:56:18PM +0200, Philippe Mathieu-Daudé wrote:
>> Hi Eduardo,
>>
>> On 4/22/19 11:04 PM, Eduardo Habkost wrote:
>>> 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.
>>>
> [...]
>>> +#include "qemu/module.h"
>>
>> Why include "qemu/module.h"?
>> I guess you don't need it.
>
> That's where the type_init() macro is defined.
Oh correct...
I tried to remove it/compile and it worked because it is pulled by:
"sysemu/cpus.h"
-> "qemu/timer.h"
-> "qemu-common.h"
-> "qemu/module.h"
Thanks!
>>> +type_init(qtest_type_init);
> [...]
>
>
>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Thanks!
>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems
2019-04-22 21:04 ` [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
@ 2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-23 5:09 ` Thomas Huth
2 siblings, 1 reply; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 22:20 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> qtest_available() will always return 0 on non-POSIX systems.
> It's simpler to just not compile the accelerator code on those
> systems instead of relying on the AccelClass::available function.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
mingw64:
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> include/sysemu/qtest.h | 9 ---------
> accel/qtest.c | 1 -
> accel/Makefile.objs | 2 +-
> 3 files changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/include/sysemu/qtest.h b/include/sysemu/qtest.h
> index 70aa40aa72..096ddfc20c 100644
> --- a/include/sysemu/qtest.h
> +++ b/include/sysemu/qtest.h
> @@ -27,13 +27,4 @@ bool qtest_driver(void);
>
> void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp);
>
> -static inline int qtest_available(void)
> -{
> -#ifdef CONFIG_POSIX
> - return 1;
> -#else
> - return 0;
> -#endif
> -}
> -
> #endif
> diff --git a/accel/qtest.c b/accel/qtest.c
> index a02b3c26c7..5b88f55921 100644
> --- a/accel/qtest.c
> +++ b/accel/qtest.c
> @@ -34,7 +34,6 @@ 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;
> }
> diff --git a/accel/Makefile.objs b/accel/Makefile.objs
> index 2a5ed46940..8b498d39d8 100644
> --- a/accel/Makefile.objs
> +++ b/accel/Makefile.objs
> @@ -1,5 +1,5 @@
> obj-$(CONFIG_SOFTMMU) += accel.o
> -obj-$(CONFIG_SOFTMMU) += qtest.o
> +obj-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_POSIX)) += qtest.o
> obj-$(CONFIG_KVM) += kvm/
> obj-$(CONFIG_TCG) += tcg/
> obj-y += stubs/
>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems
2019-04-22 22:20 ` Philippe Mathieu-Daudé
@ 2019-04-22 22:20 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 22:20 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> qtest_available() will always return 0 on non-POSIX systems.
> It's simpler to just not compile the accelerator code on those
> systems instead of relying on the AccelClass::available function.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
mingw64:
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> include/sysemu/qtest.h | 9 ---------
> accel/qtest.c | 1 -
> accel/Makefile.objs | 2 +-
> 3 files changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/include/sysemu/qtest.h b/include/sysemu/qtest.h
> index 70aa40aa72..096ddfc20c 100644
> --- a/include/sysemu/qtest.h
> +++ b/include/sysemu/qtest.h
> @@ -27,13 +27,4 @@ bool qtest_driver(void);
>
> void qtest_init(const char *qtest_chrdev, const char *qtest_log, Error **errp);
>
> -static inline int qtest_available(void)
> -{
> -#ifdef CONFIG_POSIX
> - return 1;
> -#else
> - return 0;
> -#endif
> -}
> -
> #endif
> diff --git a/accel/qtest.c b/accel/qtest.c
> index a02b3c26c7..5b88f55921 100644
> --- a/accel/qtest.c
> +++ b/accel/qtest.c
> @@ -34,7 +34,6 @@ 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;
> }
> diff --git a/accel/Makefile.objs b/accel/Makefile.objs
> index 2a5ed46940..8b498d39d8 100644
> --- a/accel/Makefile.objs
> +++ b/accel/Makefile.objs
> @@ -1,5 +1,5 @@
> obj-$(CONFIG_SOFTMMU) += accel.o
> -obj-$(CONFIG_SOFTMMU) += qtest.o
> +obj-$(call land,$(CONFIG_SOFTMMU),$(CONFIG_POSIX)) += qtest.o
> obj-$(CONFIG_KVM) += kvm/
> obj-$(CONFIG_TCG) += tcg/
> obj-y += stubs/
>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field
2019-04-22 21:04 ` [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
@ 2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-23 5:09 ` Thomas Huth
2 siblings, 1 reply; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 22:20 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> The field is not used anymore, we can remove it.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
mingw64:
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> include/sysemu/accel.h | 1 -
> accel/accel.c | 5 -----
> 2 files changed, 6 deletions(-)
>
> diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h
> index 5565e00a96..70e9e2f2a1 100644
> --- a/include/sysemu/accel.h
> +++ b/include/sysemu/accel.h
> @@ -38,7 +38,6 @@ typedef struct AccelClass {
>
> const char *opt_name;
> const char *name;
> - int (*available)(void);
> int (*init_machine)(MachineState *ms);
> void (*setup_post)(MachineState *ms, AccelState *accel);
> bool *allowed;
> diff --git a/accel/accel.c b/accel/accel.c
> index 454fef9d92..5fa31717b4 100644
> --- a/accel/accel.c
> +++ b/accel/accel.c
> @@ -107,11 +107,6 @@ void configure_accelerator(MachineState *ms, const char *progname)
> if (!acc) {
> continue;
> }
> - if (acc->available && !acc->available()) {
> - printf("%s not supported for this target\n",
> - acc->name);
> - continue;
> - }
> ret = accel_init_machine(acc, ms);
> if (ret < 0) {
> init_failed = true;
>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field
2019-04-22 22:20 ` Philippe Mathieu-Daudé
@ 2019-04-22 22:20 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 28+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-04-22 22:20 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini, Thomas Huth
On 4/22/19 11:04 PM, Eduardo Habkost wrote:
> The field is not used anymore, we can remove it.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
mingw64:
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> include/sysemu/accel.h | 1 -
> accel/accel.c | 5 -----
> 2 files changed, 6 deletions(-)
>
> diff --git a/include/sysemu/accel.h b/include/sysemu/accel.h
> index 5565e00a96..70e9e2f2a1 100644
> --- a/include/sysemu/accel.h
> +++ b/include/sysemu/accel.h
> @@ -38,7 +38,6 @@ typedef struct AccelClass {
>
> const char *opt_name;
> const char *name;
> - int (*available)(void);
> int (*init_machine)(MachineState *ms);
> void (*setup_post)(MachineState *ms, AccelState *accel);
> bool *allowed;
> diff --git a/accel/accel.c b/accel/accel.c
> index 454fef9d92..5fa31717b4 100644
> --- a/accel/accel.c
> +++ b/accel/accel.c
> @@ -107,11 +107,6 @@ void configure_accelerator(MachineState *ms, const char *progname)
> if (!acc) {
> continue;
> }
> - if (acc->available && !acc->available()) {
> - printf("%s not supported for this target\n",
> - acc->name);
> - continue;
> - }
> ret = accel_init_machine(acc, ms);
> if (ret < 0) {
> init_failed = true;
>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-22 21:04 ` [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:56 ` Philippe Mathieu-Daudé
@ 2019-04-23 5:07 ` Thomas Huth
2019-04-23 5:07 ` Thomas Huth
2019-04-23 11:08 ` [Qemu-devel] [PATCH] fixup! " Eduardo Habkost
2 siblings, 2 replies; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 5:07 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini
On 22/04/2019 23.04, Eduardo Habkost wrote:
> 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>
> ---
> accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
New file ==> You should update MAINTAINERS here as well.
Thomas
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c
2019-04-23 5:07 ` Thomas Huth
@ 2019-04-23 5:07 ` Thomas Huth
2019-04-23 11:08 ` [Qemu-devel] [PATCH] fixup! " Eduardo Habkost
1 sibling, 0 replies; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 5:07 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini
On 22/04/2019 23.04, Eduardo Habkost wrote:
> 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>
> ---
> accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
New file ==> You should update MAINTAINERS here as well.
Thomas
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems
2019-04-22 21:04 ` [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 22:20 ` Philippe Mathieu-Daudé
@ 2019-04-23 5:09 ` Thomas Huth
2019-04-23 5:09 ` Thomas Huth
2 siblings, 1 reply; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 5:09 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini
On 22/04/2019 23.04, Eduardo Habkost wrote:
> qtest_available() will always return 0 on non-POSIX systems.
> It's simpler to just not compile the accelerator code on those
> systems instead of relying on the AccelClass::available function.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> include/sysemu/qtest.h | 9 ---------
> accel/qtest.c | 1 -
> accel/Makefile.objs | 2 +-
> 3 files changed, 1 insertion(+), 11 deletions(-)
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems
2019-04-23 5:09 ` Thomas Huth
@ 2019-04-23 5:09 ` Thomas Huth
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 5:09 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini
On 22/04/2019 23.04, Eduardo Habkost wrote:
> qtest_available() will always return 0 on non-POSIX systems.
> It's simpler to just not compile the accelerator code on those
> systems instead of relying on the AccelClass::available function.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> include/sysemu/qtest.h | 9 ---------
> accel/qtest.c | 1 -
> accel/Makefile.objs | 2 +-
> 3 files changed, 1 insertion(+), 11 deletions(-)
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field
2019-04-22 21:04 ` [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 22:20 ` Philippe Mathieu-Daudé
@ 2019-04-23 5:09 ` Thomas Huth
2019-04-23 5:09 ` Thomas Huth
2 siblings, 1 reply; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 5:09 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini
On 22/04/2019 23.04, Eduardo Habkost wrote:
> The field is not used anymore, we can remove it.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> include/sysemu/accel.h | 1 -
> accel/accel.c | 5 -----
> 2 files changed, 6 deletions(-)
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field
2019-04-23 5:09 ` Thomas Huth
@ 2019-04-23 5:09 ` Thomas Huth
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 5:09 UTC (permalink / raw)
To: Eduardo Habkost, qemu-devel; +Cc: Laurent Vivier, Paolo Bonzini
On 22/04/2019 23.04, Eduardo Habkost wrote:
> The field is not used anymore, we can remove it.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> include/sysemu/accel.h | 1 -
> accel/accel.c | 5 -----
> 2 files changed, 6 deletions(-)
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH] fixup! qtest: Move accel code to accel/qtest.c
2019-04-23 5:07 ` Thomas Huth
2019-04-23 5:07 ` Thomas Huth
@ 2019-04-23 11:08 ` Eduardo Habkost
2019-04-23 11:08 ` Eduardo Habkost
2019-04-23 11:29 ` Thomas Huth
1 sibling, 2 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-23 11:08 UTC (permalink / raw)
To: Thomas Huth; +Cc: qemu-devel, Laurent Vivier, Paolo Bonzini
On Tue, Apr 23, 2019 at 07:07:06AM +0200, Thomas Huth wrote:
> On 22/04/2019 23.04, Eduardo Habkost wrote:
> > 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>
> > ---
> > accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
>
> New file ==> You should update MAINTAINERS here as well.
Oops, sorry! Fixup below.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 56139ac8ab..cf3156d952 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2024,6 +2024,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
--
2.18.0.rc1.1.g3f1ff2140
--
Eduardo
^ permalink raw reply related [flat|nested] 28+ messages in thread
* [Qemu-devel] [PATCH] fixup! qtest: Move accel code to accel/qtest.c
2019-04-23 11:08 ` [Qemu-devel] [PATCH] fixup! " Eduardo Habkost
@ 2019-04-23 11:08 ` Eduardo Habkost
2019-04-23 11:29 ` Thomas Huth
1 sibling, 0 replies; 28+ messages in thread
From: Eduardo Habkost @ 2019-04-23 11:08 UTC (permalink / raw)
To: Thomas Huth; +Cc: Laurent Vivier, Paolo Bonzini, qemu-devel
On Tue, Apr 23, 2019 at 07:07:06AM +0200, Thomas Huth wrote:
> On 22/04/2019 23.04, Eduardo Habkost wrote:
> > 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>
> > ---
> > accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
>
> New file ==> You should update MAINTAINERS here as well.
Oops, sorry! Fixup below.
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index 56139ac8ab..cf3156d952 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2024,6 +2024,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
--
2.18.0.rc1.1.g3f1ff2140
--
Eduardo
^ permalink raw reply related [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH] fixup! qtest: Move accel code to accel/qtest.c
2019-04-23 11:08 ` [Qemu-devel] [PATCH] fixup! " Eduardo Habkost
2019-04-23 11:08 ` Eduardo Habkost
@ 2019-04-23 11:29 ` Thomas Huth
2019-04-23 11:29 ` Thomas Huth
1 sibling, 1 reply; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 11:29 UTC (permalink / raw)
To: Eduardo Habkost; +Cc: qemu-devel, Laurent Vivier, Paolo Bonzini
On 23/04/2019 13.08, Eduardo Habkost wrote:
> On Tue, Apr 23, 2019 at 07:07:06AM +0200, Thomas Huth wrote:
>> On 22/04/2019 23.04, Eduardo Habkost wrote:
>>> 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>
>>> ---
>>> accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
>>
>> New file ==> You should update MAINTAINERS here as well.
>
> Oops, sorry! Fixup below.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> MAINTAINERS | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 56139ac8ab..cf3156d952 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -2024,6 +2024,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
All right, queued the patches on my qtest-next branch:
https://gitlab.com/huth/qemu/tree/qtest-next
Thanks,
Thomas
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: [Qemu-devel] [PATCH] fixup! qtest: Move accel code to accel/qtest.c
2019-04-23 11:29 ` Thomas Huth
@ 2019-04-23 11:29 ` Thomas Huth
0 siblings, 0 replies; 28+ messages in thread
From: Thomas Huth @ 2019-04-23 11:29 UTC (permalink / raw)
To: Eduardo Habkost; +Cc: Laurent Vivier, Paolo Bonzini, qemu-devel
On 23/04/2019 13.08, Eduardo Habkost wrote:
> On Tue, Apr 23, 2019 at 07:07:06AM +0200, Thomas Huth wrote:
>> On 22/04/2019 23.04, Eduardo Habkost wrote:
>>> 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>
>>> ---
>>> accel/qtest.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
>>
>> New file ==> You should update MAINTAINERS here as well.
>
> Oops, sorry! Fixup below.
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> MAINTAINERS | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 56139ac8ab..cf3156d952 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -2024,6 +2024,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
All right, queued the patches on my qtest-next branch:
https://gitlab.com/huth/qemu/tree/qtest-next
Thanks,
Thomas
^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2019-04-23 11:30 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-22 21:04 [Qemu-devel] [PATCH 0/3] Remove AccelClass::available field Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:04 ` [Qemu-devel] [PATCH 1/3] qtest: Move accel code to accel/qtest.c Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-22 21:56 ` Philippe Mathieu-Daudé
2019-04-22 22:08 ` Eduardo Habkost
2019-04-22 22:08 ` Eduardo Habkost
2019-04-22 22:17 ` Philippe Mathieu-Daudé
2019-04-22 22:17 ` Philippe Mathieu-Daudé
2019-04-23 5:07 ` Thomas Huth
2019-04-23 5:07 ` Thomas Huth
2019-04-23 11:08 ` [Qemu-devel] [PATCH] fixup! " Eduardo Habkost
2019-04-23 11:08 ` Eduardo Habkost
2019-04-23 11:29 ` Thomas Huth
2019-04-23 11:29 ` Thomas Huth
2019-04-22 21:04 ` [Qemu-devel] [PATCH 2/3] qtest: Don't compile qtest accel on non-POSIX systems Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-23 5:09 ` Thomas Huth
2019-04-23 5:09 ` Thomas Huth
2019-04-22 21:04 ` [Qemu-devel] [PATCH 3/3] accel: Remove unused AccelClass::available field Eduardo Habkost
2019-04-22 21:04 ` Eduardo Habkost
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-22 22:20 ` Philippe Mathieu-Daudé
2019-04-23 5:09 ` Thomas Huth
2019-04-23 5:09 ` Thomas Huth
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).