[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest |
Date: |
Mon, 23 Nov 2015 18:40:58 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 18/11/2015 21:49, Michael S. Tsirkin wrote:
> On Wed, Nov 18, 2015 at 10:02:58AM +0100, address@hidden wrote:
>> From: Marc-André Lureau <address@hidden>
>>
>> vhost-user-test prints a warning. A test should not need to run on
>> hugetlbfs, let's silence the warning under qtest. The
>> condition can't check on qtest_enabled() since vhost-user-test actually
>> doesn't use qtest accel. However, qtest_driver() can be used, if
>> qtest_init() is called early enough. For that reason, move chardev and
>> qtest initialization early.
>>
>> Signed-off-by: Marc-André Lureau <address@hidden>
>
> Seems ok, and let us bring back the 2.4 test that was
> dropped in 2.5, but I'd like an ack on this from someone else.
I wonder if we need the warning at all, but this patch is okay.
Anyhow:
- if (qemu_opts_foreach(qemu_find_opts("object"),
- object_create,
- object_create_initial, NULL)) {
+ if (qemu_opts_foreach(qemu_find_opts("chardev"),
+ chardev_init_func, NULL, NULL)) {
exit(1);
}
- if (qemu_opts_foreach(qemu_find_opts("chardev"),
- chardev_init_func, NULL, NULL)) {
+ if (qtest_chrdev) {
+ Error *local_err = NULL;
+ qtest_init(qtest_chrdev, qtest_log, &local_err);
+ if (local_err) {
+ error_report_err(local_err);
+ exit(1);
+ }
+ }
+
+ if (qemu_opts_foreach(qemu_find_opts("object"),
+ object_create,
+ object_create_initial, NULL)) {
exit(1);
}
Before: object-initial, chardev, qtest, object-late (not in the patch)
After: chardev, qtest, object-initial, object-late (not in the patch)
Objects must be initialized before chardev (except rng-egd) since in the
future chardev will need to use objects, in particular secret objects.
Was the swap intentional?
Paolo
@@ -4325,15 +4334,6 @@ int main(int argc, char **argv, char **envp)
configure_accelerator(current_machine);
- if (qtest_chrdev) {
- Error *local_err = NULL;
- qtest_init(qtest_chrdev, qtest_log, &local_err);
- if (local_err) {
- error_report_err(local_err);
- exit(1);
- }
- }
> Anyone?
>
>> ---
>> exec.c | 5 ++++-
>> vl.c | 28 ++++++++++++++--------------
>> 2 files changed, 18 insertions(+), 15 deletions(-)
>>
>> diff --git a/exec.c b/exec.c
>> index b09f18b..acbd4a2 100644
>> --- a/exec.c
>> +++ b/exec.c
>> @@ -51,6 +51,7 @@
>> #include "qemu/main-loop.h"
>> #include "translate-all.h"
>> #include "sysemu/replay.h"
>> +#include "sysemu/qtest.h"
>>
>> #include "exec/memory-internal.h"
>> #include "exec/ram_addr.h"
>> @@ -1196,8 +1197,10 @@ static long gethugepagesize(const char *path, Error
>> **errp)
>> return 0;
>> }
>>
>> - if (fs.f_type != HUGETLBFS_MAGIC)
>> + if (!qtest_driver() &&
>> + fs.f_type != HUGETLBFS_MAGIC) {
>> fprintf(stderr, "Warning: path not on HugeTLBFS: %s\n", path);
>> + }
>>
>> return fs.f_bsize;
>> }
>> diff --git a/vl.c b/vl.c
>> index 7d993a5..f9c661a 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -4288,14 +4288,23 @@ int main(int argc, char **argv, char **envp)
>> page_size_init();
>> socket_init();
>>
>> - if (qemu_opts_foreach(qemu_find_opts("object"),
>> - object_create,
>> - object_create_initial, NULL)) {
>> + if (qemu_opts_foreach(qemu_find_opts("chardev"),
>> + chardev_init_func, NULL, NULL)) {
>> exit(1);
>> }
>>
>> - if (qemu_opts_foreach(qemu_find_opts("chardev"),
>> - chardev_init_func, NULL, NULL)) {
>> + if (qtest_chrdev) {
>> + Error *local_err = NULL;
>> + qtest_init(qtest_chrdev, qtest_log, &local_err);
>> + if (local_err) {
>> + error_report_err(local_err);
>> + exit(1);
>> + }
>> + }
>> +
>> + if (qemu_opts_foreach(qemu_find_opts("object"),
>> + object_create,
>> + object_create_initial, NULL)) {
>> exit(1);
>> }
>>
>> @@ -4325,15 +4334,6 @@ int main(int argc, char **argv, char **envp)
>>
>> configure_accelerator(current_machine);
>>
>> - if (qtest_chrdev) {
>> - Error *local_err = NULL;
>> - qtest_init(qtest_chrdev, qtest_log, &local_err);
>> - if (local_err) {
>> - error_report_err(local_err);
>> - exit(1);
>> - }
>> - }
>> -
>> machine_opts = qemu_get_machine_opts();
>> kernel_filename = qemu_opt_get(machine_opts, "kernel");
>> initrd_filename = qemu_opt_get(machine_opts, "initrd");
>> --
>> 2.5.0
- [Qemu-devel] [PATCH 1/3] tests: define qtest-obj-y before using it, marcandre . lureau, 2015/11/16
- [Qemu-devel] [PATCH 3/3] exec: silence hugetlbfs warning under qtest, marcandre . lureau, 2015/11/16
- Re: [Qemu-devel] [PATCH 3/3] exec: silence hugetlbfs warning under qtest, Michael S. Tsirkin, 2015/11/16
- Re: [Qemu-devel] [PATCH 3/3] exec: silence hugetlbfs warning under qtest, Marc-André Lureau, 2015/11/17
- [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, marcandre . lureau, 2015/11/18
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Marc-André Lureau, 2015/11/23
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Daniel P. Berrange, 2015/11/23
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Michael S. Tsirkin, 2015/11/24
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Daniel P. Berrange, 2015/11/24
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Michael S. Tsirkin, 2015/11/24
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Daniel P. Berrange, 2015/11/24
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Paolo Bonzini, 2015/11/24
- Re: [Qemu-devel] [PATCH] exec: silence hugetlbfs warning under qtest, Michael S. Tsirkin, 2015/11/24