[PATCH 0/3] Remove C virtiofsd

Dr. David Alan Gilbert (git) posted 3 patches 1 year, 3 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230118153833.102731-1-dgilbert@redhat.com
Maintainers: Peter Maydell <peter.maydell@linaro.org>, Paolo Bonzini <pbonzini@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "Daniel P. Berrangé" <berrange@redhat.com>, Thomas Huth <thuth@redhat.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, "Alex Bennée" <alex.bennee@linaro.org>, Wainer dos Santos Moschetta <wainersm@redhat.com>, Beraldo Leal <bleal@redhat.com>
There is a newer version of this series
MAINTAINERS                                   |    2 -
docs/about/deprecated.rst                     |   18 -
docs/about/removed-features.rst               |   13 +
docs/conf.py                                  |    4 -
docs/meson.build                              |    1 -
docs/tools/index.rst                          |    1 -
docs/tools/virtiofsd.rst                      |  403 --
meson.build                                   |    1 -
meson_options.txt                             |    2 -
.../ci/org.centos/stream/8/x86_64/configure   |    2 -
scripts/coverity-scan/COMPONENTS.md           |    3 -
scripts/meson-buildoptions.sh                 |    3 -
tools/meson.build                             |   13 -
tools/virtiofsd/50-qemu-virtiofsd.json.in     |    5 -
tools/virtiofsd/buffer.c                      |  350 --
tools/virtiofsd/fuse_common.h                 |  837 ---
tools/virtiofsd/fuse_i.h                      |  107 -
tools/virtiofsd/fuse_log.c                    |   40 -
tools/virtiofsd/fuse_log.h                    |   75 -
tools/virtiofsd/fuse_lowlevel.c               | 2732 ----------
tools/virtiofsd/fuse_lowlevel.h               | 1988 --------
tools/virtiofsd/fuse_misc.h                   |   59 -
tools/virtiofsd/fuse_opt.c                    |  446 --
tools/virtiofsd/fuse_opt.h                    |  272 -
tools/virtiofsd/fuse_signals.c                |   93 -
tools/virtiofsd/fuse_virtio.c                 | 1081 ----
tools/virtiofsd/fuse_virtio.h                 |   33 -
tools/virtiofsd/helper.c                      |  409 --
tools/virtiofsd/meson.build                   |   18 -
tools/virtiofsd/passthrough_helpers.h         |   51 -
tools/virtiofsd/passthrough_ll.c              | 4521 -----------------
tools/virtiofsd/passthrough_seccomp.c         |  182 -
tools/virtiofsd/passthrough_seccomp.h         |   14 -
33 files changed, 13 insertions(+), 13766 deletions(-)
delete mode 100644 docs/tools/virtiofsd.rst
delete mode 100644 tools/virtiofsd/50-qemu-virtiofsd.json.in
delete mode 100644 tools/virtiofsd/buffer.c
delete mode 100644 tools/virtiofsd/fuse_common.h
delete mode 100644 tools/virtiofsd/fuse_i.h
delete mode 100644 tools/virtiofsd/fuse_log.c
delete mode 100644 tools/virtiofsd/fuse_log.h
delete mode 100644 tools/virtiofsd/fuse_lowlevel.c
delete mode 100644 tools/virtiofsd/fuse_lowlevel.h
delete mode 100644 tools/virtiofsd/fuse_misc.h
delete mode 100644 tools/virtiofsd/fuse_opt.c
delete mode 100644 tools/virtiofsd/fuse_opt.h
delete mode 100644 tools/virtiofsd/fuse_signals.c
delete mode 100644 tools/virtiofsd/fuse_virtio.c
delete mode 100644 tools/virtiofsd/fuse_virtio.h
delete mode 100644 tools/virtiofsd/helper.c
delete mode 100644 tools/virtiofsd/meson.build
delete mode 100644 tools/virtiofsd/passthrough_helpers.h
delete mode 100644 tools/virtiofsd/passthrough_ll.c
delete mode 100644 tools/virtiofsd/passthrough_seccomp.c
delete mode 100644 tools/virtiofsd/passthrough_seccomp.h
[PATCH 0/3] Remove C virtiofsd
Posted by Dr. David Alan Gilbert (git) 1 year, 3 months ago
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

We deprecated the C virtiofsd in commit 34deee7b6a1418f3d62a
in v7.0 in favour of the Rust implementation at

  https://gitlab.com/virtio-fs/virtiofsd

since then, the Rust version has had more development and
has held up well.  It's time to say goodbye to the C version
that got us going.

The only thing I've not cleaned up here is
  tests/avocado/virtiofs_submounts.py

which I guess needs to figure out where the virtiofsd implementation
is and use it; suggestions welcome.

Dave


Dr. David Alan Gilbert (3):
  virtiofsd: Remove build and docs glue
  virtiofsd: Remove source
  virtiofsd: Swing deprecated message to removed-features

 MAINTAINERS                                   |    2 -
 docs/about/deprecated.rst                     |   18 -
 docs/about/removed-features.rst               |   13 +
 docs/conf.py                                  |    4 -
 docs/meson.build                              |    1 -
 docs/tools/index.rst                          |    1 -
 docs/tools/virtiofsd.rst                      |  403 --
 meson.build                                   |    1 -
 meson_options.txt                             |    2 -
 .../ci/org.centos/stream/8/x86_64/configure   |    2 -
 scripts/coverity-scan/COMPONENTS.md           |    3 -
 scripts/meson-buildoptions.sh                 |    3 -
 tools/meson.build                             |   13 -
 tools/virtiofsd/50-qemu-virtiofsd.json.in     |    5 -
 tools/virtiofsd/buffer.c                      |  350 --
 tools/virtiofsd/fuse_common.h                 |  837 ---
 tools/virtiofsd/fuse_i.h                      |  107 -
 tools/virtiofsd/fuse_log.c                    |   40 -
 tools/virtiofsd/fuse_log.h                    |   75 -
 tools/virtiofsd/fuse_lowlevel.c               | 2732 ----------
 tools/virtiofsd/fuse_lowlevel.h               | 1988 --------
 tools/virtiofsd/fuse_misc.h                   |   59 -
 tools/virtiofsd/fuse_opt.c                    |  446 --
 tools/virtiofsd/fuse_opt.h                    |  272 -
 tools/virtiofsd/fuse_signals.c                |   93 -
 tools/virtiofsd/fuse_virtio.c                 | 1081 ----
 tools/virtiofsd/fuse_virtio.h                 |   33 -
 tools/virtiofsd/helper.c                      |  409 --
 tools/virtiofsd/meson.build                   |   18 -
 tools/virtiofsd/passthrough_helpers.h         |   51 -
 tools/virtiofsd/passthrough_ll.c              | 4521 -----------------
 tools/virtiofsd/passthrough_seccomp.c         |  182 -
 tools/virtiofsd/passthrough_seccomp.h         |   14 -
 33 files changed, 13 insertions(+), 13766 deletions(-)
 delete mode 100644 docs/tools/virtiofsd.rst
 delete mode 100644 tools/virtiofsd/50-qemu-virtiofsd.json.in
 delete mode 100644 tools/virtiofsd/buffer.c
 delete mode 100644 tools/virtiofsd/fuse_common.h
 delete mode 100644 tools/virtiofsd/fuse_i.h
 delete mode 100644 tools/virtiofsd/fuse_log.c
 delete mode 100644 tools/virtiofsd/fuse_log.h
 delete mode 100644 tools/virtiofsd/fuse_lowlevel.c
 delete mode 100644 tools/virtiofsd/fuse_lowlevel.h
 delete mode 100644 tools/virtiofsd/fuse_misc.h
 delete mode 100644 tools/virtiofsd/fuse_opt.c
 delete mode 100644 tools/virtiofsd/fuse_opt.h
 delete mode 100644 tools/virtiofsd/fuse_signals.c
 delete mode 100644 tools/virtiofsd/fuse_virtio.c
 delete mode 100644 tools/virtiofsd/fuse_virtio.h
 delete mode 100644 tools/virtiofsd/helper.c
 delete mode 100644 tools/virtiofsd/meson.build
 delete mode 100644 tools/virtiofsd/passthrough_helpers.h
 delete mode 100644 tools/virtiofsd/passthrough_ll.c
 delete mode 100644 tools/virtiofsd/passthrough_seccomp.c
 delete mode 100644 tools/virtiofsd/passthrough_seccomp.h

-- 
2.39.0
Re: [PATCH 0/3] Remove C virtiofsd
Posted by Stefan Hajnoczi 1 year, 3 months ago
On Wed, 18 Jan 2023 at 10:40, Dr. David Alan Gilbert (git)
<dgilbert@redhat.com> wrote:
>
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>
> We deprecated the C virtiofsd in commit 34deee7b6a1418f3d62a
> in v7.0 in favour of the Rust implementation at
>
>   https://gitlab.com/virtio-fs/virtiofsd
>
> since then, the Rust version has had more development and
> has held up well.  It's time to say goodbye to the C version
> that got us going.
>
> The only thing I've not cleaned up here is
>   tests/avocado/virtiofs_submounts.py
>
> which I guess needs to figure out where the virtiofsd implementation
> is and use it; suggestions welcome.

I see something similar in tests/avocado/avocado_qemu/__init__.py:

        # If qemu-img has been built, use it, otherwise the system wide one
        # will be used.  If none is available, the test will cancel.
        qemu_img = os.path.join(BUILD_DIR, 'qemu-img')
        if not os.path.exists(qemu_img):
            qemu_img = find_command('qemu-img', False)
        if qemu_img is False:
            self.cancel('Could not find "qemu-img", which is required to '
                        'create the bootable image')

Maybe find_command('virtiofsd', False)?

Stefan
Re: [PATCH 0/3] Remove C virtiofsd
Posted by Hanna Czenczek 1 year, 3 months ago
On 18.01.23 16:59, Stefan Hajnoczi wrote:
> On Wed, 18 Jan 2023 at 10:40, Dr. David Alan Gilbert (git)
> <dgilbert@redhat.com> wrote:
>> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>>
>> We deprecated the C virtiofsd in commit 34deee7b6a1418f3d62a
>> in v7.0 in favour of the Rust implementation at
>>
>>    https://gitlab.com/virtio-fs/virtiofsd
>>
>> since then, the Rust version has had more development and
>> has held up well.  It's time to say goodbye to the C version
>> that got us going.
>>
>> The only thing I've not cleaned up here is
>>    tests/avocado/virtiofs_submounts.py
>>
>> which I guess needs to figure out where the virtiofsd implementation
>> is and use it; suggestions welcome.
> I see something similar in tests/avocado/avocado_qemu/__init__.py:
>
>          # If qemu-img has been built, use it, otherwise the system wide one
>          # will be used.  If none is available, the test will cancel.
>          qemu_img = os.path.join(BUILD_DIR, 'qemu-img')
>          if not os.path.exists(qemu_img):
>              qemu_img = find_command('qemu-img', False)
>          if qemu_img is False:
>              self.cancel('Could not find "qemu-img", which is required to '
>                          'create the bootable image')
>
> Maybe find_command('virtiofsd', False)?

It was supposed to be a test for virtiofsd, so it doesn’t really make 
sense to run it with the system-wide daemon, I think.

Maybe there’s some way we can move the test to the Rust repo?  I’ll take 
a look.

Hanna


Re: [PATCH 0/3] Remove C virtiofsd
Posted by Alex Bennée 1 year, 3 months ago
Hanna Czenczek <hreitz@redhat.com> writes:

> On 18.01.23 16:59, Stefan Hajnoczi wrote:
>> On Wed, 18 Jan 2023 at 10:40, Dr. David Alan Gilbert (git)
>> <dgilbert@redhat.com> wrote:
>>> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>>>
>>> We deprecated the C virtiofsd in commit 34deee7b6a1418f3d62a
>>> in v7.0 in favour of the Rust implementation at
>>>
>>>    https://gitlab.com/virtio-fs/virtiofsd
>>>
>>> since then, the Rust version has had more development and
>>> has held up well.  It's time to say goodbye to the C version
>>> that got us going.
>>>
>>> The only thing I've not cleaned up here is
>>>    tests/avocado/virtiofs_submounts.py
>>>
>>> which I guess needs to figure out where the virtiofsd implementation
>>> is and use it; suggestions welcome.
>> I see something similar in tests/avocado/avocado_qemu/__init__.py:
>>
>>          # If qemu-img has been built, use it, otherwise the system wide one
>>          # will be used.  If none is available, the test will cancel.
>>          qemu_img = os.path.join(BUILD_DIR, 'qemu-img')
>>          if not os.path.exists(qemu_img):
>>              qemu_img = find_command('qemu-img', False)
>>          if qemu_img is False:
>>              self.cancel('Could not find "qemu-img", which is required to '
>>                          'create the bootable image')
>>
>> Maybe find_command('virtiofsd', False)?
>
> It was supposed to be a test for virtiofsd, so it doesn’t really make
> sense to run it with the system-wide daemon, I think.
>
> Maybe there’s some way we can move the test to the Rust repo?  I’ll
> take a look.

Do you want to use cargo to install the daemons? If so could we make the
support generic enough so we could also start using the vhost-device
daemons for tests?

>
> Hanna


-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH 0/3] Remove C virtiofsd
Posted by Stefan Hajnoczi 1 year, 3 months ago
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>