On Sun, 6 Sep 2020 18:50:32 +0200 Christian Schoenebeck <qemu_...@crudebyte.com> wrote:
> 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_...@crudebyte.com> > --- Heh, yes I guess it makes sense :) I guess you could maybe queue this patch before the other one. Reviewed-by: Greg Kurz <gr...@kaod.org> > fsdev/file-op-9p.h | 4 ++++ > hw/9pfs/9p-synth.c | 2 ++ > hw/9pfs/9p.c | 2 +- > 3 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h > index f2f7772c86..d51cec2f3b 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 7eb210ffa8..cec8c0eefc 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 99b6f24fd6..741d222c3f 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 "