Re: [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file

Michael S. Tsirkin
2021-09-05T15:09:25Z

On Sun, Sep 05, 2021 at 03:09:11PM +0300, Max Gurtovoy wrote:
> For now only add this definition from the spec. In the future, The
> drivers should negotiate this feature to optimize the performance.
>
> Signed-off-by: Max Gurtovoy <mgurtovoy@nvidia.com>

So I think IN_ORDER was a mistake since it breaks ability
to do pagefaults efficiently without stopping the ring.
I think that VIRTIO_F_PARTIAL_ORDER is a better option -
am working on finalizing that proposal, will post RSN now.

> ---
> include/uapi/linux/virtio_config.h | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/include/uapi/linux/virtio_config.h b/include/uapi/linux/virtio_config.h
> index b5eda06f0d57..3fcdc4ab6f19 100644
> --- a/include/uapi/linux/virtio_config.h
> +++ b/include/uapi/linux/virtio_config.h
> @@ -82,6 +82,12 @@
> /* This feature indicates support for the packed virtqueue layout. */
> #define VIRTIO_F_RING_PACKED 34
>
> +/*
> + * This feature indicates that all buffers are used by the device in the same
> + * order in which they have been made available.
> + */
> +#define VIRTIO_F_IN_ORDER 35
> +
> /*
> * This feature indicates that memory accesses by the driver and the
> * device are ordered in a way described by the platform.
> --
> 2.18.1