[Qemu-devel] [PATCH v3 0/3] Add virtio-fs (experimental)

Dr. David Alan Gilbert (git) posted 3 patches 4 years, 7 months ago
Test FreeBSD passed
Test asan passed
Test docker-mingw@fedora passed
Test docker-clang@ubuntu passed
Test checkpatch passed
Test docker-quick@centos7 passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190917160057.11847-1-dgilbert@redhat.com
Maintainers: "Michael S. Tsirkin" <mst@redhat.com>
configure                                   |  13 +
hw/virtio/Makefile.objs                     |   2 +
hw/virtio/vhost-user-fs-pci.c               |  85 ++++++
hw/virtio/vhost-user-fs.c                   | 299 ++++++++++++++++++++
include/hw/virtio/vhost-user-fs.h           |  45 +++
include/standard-headers/linux/virtio_fs.h  |  41 +++
include/standard-headers/linux/virtio_ids.h |   1 +
7 files changed, 486 insertions(+)
create mode 100644 hw/virtio/vhost-user-fs-pci.c
create mode 100644 hw/virtio/vhost-user-fs.c
create mode 100644 include/hw/virtio/vhost-user-fs.h
create mode 100644 include/standard-headers/linux/virtio_fs.h
[Qemu-devel] [PATCH v3 0/3] Add virtio-fs (experimental)
Posted by Dr. David Alan Gilbert (git) 4 years, 7 months ago
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Hi,
  This set of patches adds the core of the virtio-fs support to qemu;
it's marked experimental since the kernel patch isn't in yet; but
it's nearly there;  the spec has passed the voting stage, and
the kernel changes are queued in fuse-next.

  A future set of patches will add the optional DAX mapping support.

  The actual qemu change is pretty minimal, since it's really only
a virtio device with some queues.

Some links:
  Mailing list: https://www.redhat.com/mailman/listinfo/virtio-fs
  Dev tree: Including filesystem daemon: https://gitlab.com/virtio-fs/qemu
  kernel:
         dev world:
            https://gitlab.com/virtio-fs/linux
         fuse next:
           https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git/log/?h=for-next
  virtio spec changes:
         https://lists.oasis-open.org/archives/virtio-dev/201908/msg00112.html

v3
  Split the kernel header update out
    The contents correspond to the fuse-next world+a patch Stefan just
    sent to make that use the newer 'num_request_queues' name

  Update copyright year,
  Remove the assert in vuf_handle_output
    the virtio core code sometimes calls it during cleanup if the
    daemon dies first
  (I've not changed the comment about guest_notifier_mask/virtio-pci
   since that's copied in a bunch of virtio code going back ~5 years)

Dr. David Alan Gilbert (3):
  virtio: Add virito_fs linux headers
  virtio: add vhost-user-fs base device
  virtio: add vhost-user-fs-pci device

 configure                                   |  13 +
 hw/virtio/Makefile.objs                     |   2 +
 hw/virtio/vhost-user-fs-pci.c               |  85 ++++++
 hw/virtio/vhost-user-fs.c                   | 299 ++++++++++++++++++++
 include/hw/virtio/vhost-user-fs.h           |  45 +++
 include/standard-headers/linux/virtio_fs.h  |  41 +++
 include/standard-headers/linux/virtio_ids.h |   1 +
 7 files changed, 486 insertions(+)
 create mode 100644 hw/virtio/vhost-user-fs-pci.c
 create mode 100644 hw/virtio/vhost-user-fs.c
 create mode 100644 include/hw/virtio/vhost-user-fs.h
 create mode 100644 include/standard-headers/linux/virtio_fs.h

-- 
2.21.0


Re: [PATCH v3 0/3] Add virtio-fs (experimental)
Posted by Michael S. Tsirkin 4 years, 7 months ago
On Tue, Sep 17, 2019 at 05:00:54PM +0100, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> 
> Hi,
>   This set of patches adds the core of the virtio-fs support to qemu;
> it's marked experimental since the kernel patch isn't in yet; but
> it's nearly there;  the spec has passed the voting stage, and
> the kernel changes are queued in fuse-next.


Was going to apply this but turns out headers didn't land in Linux yet.
Replied on the specific patches.

>   A future set of patches will add the optional DAX mapping support.
> 
>   The actual qemu change is pretty minimal, since it's really only
> a virtio device with some queues.
> 
> Some links:
>   Mailing list: https://www.redhat.com/mailman/listinfo/virtio-fs
>   Dev tree: Including filesystem daemon: https://gitlab.com/virtio-fs/qemu
>   kernel:
>          dev world:
>             https://gitlab.com/virtio-fs/linux
>          fuse next:
>            https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git/log/?h=for-next
>   virtio spec changes:
>          https://lists.oasis-open.org/archives/virtio-dev/201908/msg00112.html
> 
> v3
>   Split the kernel header update out
>     The contents correspond to the fuse-next world+a patch Stefan just
>     sent to make that use the newer 'num_request_queues' name
> 
>   Update copyright year,
>   Remove the assert in vuf_handle_output
>     the virtio core code sometimes calls it during cleanup if the
>     daemon dies first
>   (I've not changed the comment about guest_notifier_mask/virtio-pci
>    since that's copied in a bunch of virtio code going back ~5 years)
> 
> Dr. David Alan Gilbert (3):
>   virtio: Add virito_fs linux headers
>   virtio: add vhost-user-fs base device
>   virtio: add vhost-user-fs-pci device
> 
>  configure                                   |  13 +
>  hw/virtio/Makefile.objs                     |   2 +
>  hw/virtio/vhost-user-fs-pci.c               |  85 ++++++
>  hw/virtio/vhost-user-fs.c                   | 299 ++++++++++++++++++++
>  include/hw/virtio/vhost-user-fs.h           |  45 +++
>  include/standard-headers/linux/virtio_fs.h  |  41 +++
>  include/standard-headers/linux/virtio_ids.h |   1 +
>  7 files changed, 486 insertions(+)
>  create mode 100644 hw/virtio/vhost-user-fs-pci.c
>  create mode 100644 hw/virtio/vhost-user-fs.c
>  create mode 100644 include/hw/virtio/vhost-user-fs.h
>  create mode 100644 include/standard-headers/linux/virtio_fs.h
> 
> -- 
> 2.21.0

Re: [Qemu-devel] [PATCH v3 0/3] Add virtio-fs (experimental)
Posted by Cornelia Huck 4 years, 7 months ago
On Tue, 17 Sep 2019 17:00:54 +0100
"Dr. David Alan Gilbert (git)" <dgilbert@redhat.com> wrote:

> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
> 
> Hi,
>   This set of patches adds the core of the virtio-fs support to qemu;
> it's marked experimental since the kernel patch isn't in yet; but
> it's nearly there;  the spec has passed the voting stage, and
> the kernel changes are queued in fuse-next.
> 
>   A future set of patches will add the optional DAX mapping support.
> 
>   The actual qemu change is pretty minimal, since it's really only
> a virtio device with some queues.
> 
> Some links:
>   Mailing list: https://www.redhat.com/mailman/listinfo/virtio-fs
>   Dev tree: Including filesystem daemon: https://gitlab.com/virtio-fs/qemu
>   kernel:
>          dev world:
>             https://gitlab.com/virtio-fs/linux
>          fuse next:
>            https://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse.git/log/?h=for-next
>   virtio spec changes:
>          https://lists.oasis-open.org/archives/virtio-dev/201908/msg00112.html
> 
> v3
>   Split the kernel header update out
>     The contents correspond to the fuse-next world+a patch Stefan just
>     sent to make that use the newer 'num_request_queues' name
> 
>   Update copyright year,
>   Remove the assert in vuf_handle_output
>     the virtio core code sometimes calls it during cleanup if the
>     daemon dies first
>   (I've not changed the comment about guest_notifier_mask/virtio-pci
>    since that's copied in a bunch of virtio code going back ~5 years)

Agreed, let's change all of that at once when we figure out what a
better comment would be.

> 
> Dr. David Alan Gilbert (3):
>   virtio: Add virito_fs linux headers
>   virtio: add vhost-user-fs base device
>   virtio: add vhost-user-fs-pci device
> 
>  configure                                   |  13 +
>  hw/virtio/Makefile.objs                     |   2 +
>  hw/virtio/vhost-user-fs-pci.c               |  85 ++++++
>  hw/virtio/vhost-user-fs.c                   | 299 ++++++++++++++++++++
>  include/hw/virtio/vhost-user-fs.h           |  45 +++
>  include/standard-headers/linux/virtio_fs.h  |  41 +++
>  include/standard-headers/linux/virtio_ids.h |   1 +
>  7 files changed, 486 insertions(+)
>  create mode 100644 hw/virtio/vhost-user-fs-pci.c
>  create mode 100644 hw/virtio/vhost-user-fs.c
>  create mode 100644 include/hw/virtio/vhost-user-fs.h
>  create mode 100644 include/standard-headers/linux/virtio_fs.h
> 

Looks good to me. I still want to test virtio-fs on s390 (with a ccw
device as well), but won't find time in the near future. Hopefully, at
some point in time before KVM Forum, at least :)