Commit 1c7ba94a authored by Marc-André Lureau's avatar Marc-André Lureau Committed by Michael S. Tsirkin
Browse files

exec: silence hugetlbfs warning under qtest



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: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 421f4448
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -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;
}
+14 −14
Original line number Diff line number Diff line
@@ -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");