On Mon, Feb 28, 2022 at 8:11 AM Christian Schoenebeck <
qemu_...@crudebyte.com> wrote:

> On Sonntag, 27. Februar 2022 23:35:22 CET Will Cohen wrote:
> > From: Keno Fischer <k...@juliacomputing.com>
> >
> > To allow VirtFS on darwin, we need to check that pthread_fchdir_np is
> > available, which has only been available since macOS 10.12.
> >
> > Additionally, virtfs_proxy_helper is disabled on Darwin. This patch
> > series does not currently provide an implementation of the proxy-helper,
> > but this functionality could be implemented later on.
> >
> > Signed-off-by: Keno Fischer <k...@juliacomputing.com>
> > [Michael Roitzsch: - Rebase for NixOS]
> > Signed-off-by: Michael Roitzsch <reactorcont...@icloud.com>
> > [Will Cohen: - Rebase to master]
> > Signed-off-by: Will Cohen <wwco...@gmail.com>
> > Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>
>
> Paolo, could you have a look at this patch, please? It has changed quite a
> bit
> since your review.
>
> Best regards,
> Christian Schoenebeck


Yes. I probably should have noted that in the cover letter. The code style
itself totally changed in this last version as well, but now conforms to
the other changes made to HEAD during this last rebase.


>
> > [Will Cohen: - Add check for pthread_fchdir_np to virtfs
> >              - Add comments to patch commit
> >              - Note that virtfs_proxy_helper does not work
> >                on macOS
> >              - Fully adjust meson virtfs error note to specify
> >                macOS
> >              - Rebase to master]
> > Signed-off-by: Will Cohen <wwco...@gmail.com>
> > ---
> >  fsdev/meson.build |  1 +
> >  meson.build       | 12 +++++++-----
> >  2 files changed, 8 insertions(+), 5 deletions(-)
> >
> > diff --git a/fsdev/meson.build b/fsdev/meson.build
> > index adf57cc43e..b632b66348 100644
> > --- a/fsdev/meson.build
> > +++ b/fsdev/meson.build
> > @@ -7,6 +7,7 @@ fsdev_ss.add(when: ['CONFIG_FSDEV_9P'], if_true: files(
> >    'qemu-fsdev.c',
> >  ), if_false: files('qemu-fsdev-dummy.c'))
> >  softmmu_ss.add_all(when: 'CONFIG_LINUX', if_true: fsdev_ss)
> > +softmmu_ss.add_all(when: 'CONFIG_DARWIN', if_true: fsdev_ss)
> >
> >  if have_virtfs_proxy_helper
> >    executable('virtfs-proxy-helper',
> > diff --git a/meson.build b/meson.build
> > index 3f8dca2c7a..ba52ed9e9a 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -1450,14 +1450,16 @@ dbus_display = get_option('dbus_display') \
> >    .allowed()
> >
> >  have_virtfs = get_option('virtfs') \
> > -    .require(targetos == 'linux',
> > -             error_message: 'virtio-9p (virtfs) requires Linux') \
> > -    .require(libattr.found() and libcap_ng.found(),
> > -             error_message: 'virtio-9p (virtfs) requires
> libcap-ng-devel and libattr-devel') \
> > +    .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()
> >
> > -have_virtfs_proxy_helper = have_virtfs and have_tools
> > +have_virtfs_proxy_helper = targetos != 'darwin' and have_virtfs and
> have_tools
> >
> >  foreach k : get_option('trace_backends')
> >    config_host_data.set('CONFIG_TRACE_' + k.to_upper(), true)
>
>
>

Reply via email to