diff options
author | Christian Schoenebeck <qemu_oss@crudebyte.com> | 2020-09-06 18:50:32 +0200 |
---|---|---|
committer | Christian Schoenebeck <qemu_oss@crudebyte.com> | 2020-09-15 12:12:03 +0200 |
commit | c418f935ac6aed9aa1dc0ceb4b19044a9b7b7968 (patch) | |
tree | e4ac892b028604758c487ab5276050ea9f772f5b | |
parent | 62777d825ba6a7f9ba749588a9e1e7b273f7e967 (diff) | |
download | qemu-c418f935ac6aed9aa1dc0ceb4b19044a9b7b7968.zip qemu-c418f935ac6aed9aa1dc0ceb4b19044a9b7b7968.tar.gz qemu-c418f935ac6aed9aa1dc0ceb4b19044a9b7b7968.tar.bz2 |
9pfs: disable msize warning for synth driver
Previous patch introduced a performance warning being logged on host
side if client connected with an 'msize' <= 8192. Disable this
performance warning for the synth driver to prevent that warning from
being printed whenever the 9pfs (qtest) test cases are running.
Introduce a new export flag V9FS_NO_PERF_WARN for that purpose, which
might also be used to disable such warnings from the CLI in future.
We could have also prevented the warning by simply raising P9_MAX_SIZE
in virtio-9p-test.c to any value larger than 8192, however in the
context of test cases it makes sense running for edge cases, which
includes the lowest 'msize' value supported by the server which is
4096, hence we want to preserve an msize of 4096 for the test client.
Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Reviewed-by: Greg Kurz <groug@kaod.org>
Message-Id: <E1kEyDy-0006nN-5A@lizzy.crudebyte.com>
Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
-rw-r--r-- | fsdev/file-op-9p.h | 4 | ||||
-rw-r--r-- | hw/9pfs/9p-synth.c | 2 | ||||
-rw-r--r-- | hw/9pfs/9p.c | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h index f2f7772..d51cec2 100644 --- a/fsdev/file-op-9p.h +++ b/fsdev/file-op-9p.h @@ -64,6 +64,10 @@ typedef struct ExtendedOps { */ #define V9FS_REMAP_INODES 0x00000200 #define V9FS_FORBID_MULTIDEVS 0x00000400 +/* + * Disables certain performance warnings from being logged on host side. + */ +#define V9FS_NO_PERF_WARN 0x00000800 #define V9FS_SEC_MASK 0x0000003C diff --git a/hw/9pfs/9p-synth.c b/hw/9pfs/9p-synth.c index 7eb210f..cec8c0e 100644 --- a/hw/9pfs/9p-synth.c +++ b/hw/9pfs/9p-synth.c @@ -541,6 +541,8 @@ static int synth_init(FsContext *ctx, Error **errp) QLIST_INIT(&synth_root.child); qemu_mutex_init(&synth_mutex); + ctx->export_flags |= V9FS_NO_PERF_WARN; + /* Add "." and ".." entries for root */ v9fs_add_dir_node(&synth_root, synth_root.attr->mode, "..", synth_root.attr, synth_root.attr->inode); diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 99b6f24..741d222 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1354,7 +1354,7 @@ static void coroutine_fn v9fs_version(void *opaque) } /* 8192 is the default msize of Linux clients */ - if (s->msize <= 8192) { + if (s->msize <= 8192 && !(s->ctx.export_flags & V9FS_NO_PERF_WARN)) { warn_report_once( "9p: degraded performance: a reasonable high msize should be " "chosen on client/guest side (chosen msize is <= 8192). See " |