qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Christian Schoenebeck <qemu_oss@crudebyte.com>
To: qemu-devel@nongnu.org, Thomas Huth <thuth@redhat.com>
Cc: Greg Kurz <groug@kaod.org>, Stefan Hajnoczi <stefanha@gmail.com>,
	Warner Losh <imp@bsdimp.com>, Bin Meng <bin.meng@windriver.com>
Subject: Re: [PATCH] 9pfs: fix missing sys/mount.h include
Date: Fri, 28 Oct 2022 14:14:13 +0200	[thread overview]
Message-ID: <7476627.JHTLl5x3NE@silver> (raw)
In-Reply-To: <53df074a-c938-cbe5-caca-a0c6a7cbd3e7@redhat.com>

On Friday, October 28, 2022 1:42:34 PM CEST Thomas Huth wrote:
> On 28/10/2022 13.21, Christian Schoenebeck wrote:
> > Fixes the following build error:
> > 
> >    fsdev/file-op-9p.h:156:56: error: declaration of 'struct statfs' will
> >    not be visible outside of this function [-Werror,-Wvisibility]
> >      int (*statfs)(FsContext *s, V9fsPath *path, struct statfs *stbuf);
> >                                                         ^
> > 
> > As Windows neither has statfs, nor sys/mount.h, don't include it there.
> > 
> > Fixes: 684f91203439 ("tests/9p: split virtio-9p-test.c ...")
> > Link: https://lore.kernel.org/all/2690108.PsDodiG1Zx@silver/
> > Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
> > ---
> >   fsdev/file-op-9p.h | 2 ++
> >   1 file changed, 2 insertions(+)
> > 
> > diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h
> > index 4997677460..700f1857b4 100644
> > --- a/fsdev/file-op-9p.h
> > +++ b/fsdev/file-op-9p.h
> > @@ -24,6 +24,8 @@
> >   #endif
> >   #ifdef CONFIG_DARWIN
> >   # include <sys/param.h>
> > +#endif
> > +#ifndef CONFIG_WIN32
> >   # include <sys/mount.h>
> >   #endif
> 
> Do you feel confident that this will also work on other exotic systems? 
> (e.g. does it work with "make vm-build-haiku.x86_64" ?)
> Otherwise it might be better to add a meson.build test for this header instead.

9pfs only supports Linux and macOS ATM, and Windows being WIP. From
meson.buid:

have_virtfs = get_option('virtfs') \
    .require(targetos == 'linux' or targetos == 'darwin',
             error_message: 'virtio-9p (virtfs) requires Linux or macOS') \
    .require(targetos == 'linux' or cc.has_function('pthread_fchdir_np'),
             error_message: 'virtio-9p (virtfs) on macOS requires the presence of pthread_fchdir_np') \
    .require(targetos == 'darwin' or (libattr.found() and libcap_ng.found()),
             error_message: 'virtio-9p (virtfs) on Linux requires libcap-ng-devel and libattr-devel') \
    .disable_auto_if(not have_tools and not have_system) \
    .allowed()

And Bin Meng just sent a related patch to fix building 9pfs tests
unconditionally:

https://lore.kernel.org/all/20221028045736.679903-9-bin.meng@windriver.com/

Best regards,
Christian Schoenebeck




  reply	other threads:[~2022-10-28 12:38 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-28 11:21 [PATCH] 9pfs: fix missing sys/mount.h include Christian Schoenebeck
2022-10-28 11:42 ` Thomas Huth
2022-10-28 12:14   ` Christian Schoenebeck [this message]
2022-10-28 12:27     ` Thomas Huth
2022-10-28 13:39 ` Bin Meng

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7476627.JHTLl5x3NE@silver \
    --to=qemu_oss@crudebyte.com \
    --cc=bin.meng@windriver.com \
    --cc=groug@kaod.org \
    --cc=imp@bsdimp.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@gmail.com \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).