All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file
@ 2021-09-05 12:09 Max Gurtovoy
  2021-09-05 15:09   ` Michael S. Tsirkin
  0 siblings, 1 reply; 4+ messages in thread
From: Max Gurtovoy @ 2021-09-05 12:09 UTC (permalink / raw)
  To: mst, virtualization, kvm, stefanha; +Cc: oren, nitzanc, Max Gurtovoy

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>
---
 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


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file
  2021-09-05 12:09 [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file Max Gurtovoy
@ 2021-09-05 15:09   ` Michael S. Tsirkin
  0 siblings, 0 replies; 4+ messages in thread
From: Michael S. Tsirkin @ 2021-09-05 15:09 UTC (permalink / raw)
  To: Max Gurtovoy; +Cc: virtualization, kvm, stefanha, oren, nitzanc

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


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file
@ 2021-09-05 15:09   ` Michael S. Tsirkin
  0 siblings, 0 replies; 4+ messages in thread
From: Michael S. Tsirkin @ 2021-09-05 15:09 UTC (permalink / raw)
  To: Max Gurtovoy; +Cc: nitzanc, oren, stefanha, kvm, virtualization

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

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file
  2021-09-05 15:09   ` Michael S. Tsirkin
  (?)
@ 2021-09-05 22:21   ` Max Gurtovoy
  -1 siblings, 0 replies; 4+ messages in thread
From: Max Gurtovoy @ 2021-09-05 22:21 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: virtualization, kvm, stefanha, oren, nitzanc


On 9/5/2021 6:09 PM, Michael S. Tsirkin wrote:
> 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'm not sure I get it.

I wanted to use it for improving performance of a virtio-blk device by 
coalescing many completions to one interrupt.

> 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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-09-05 22:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-05 12:09 [PATCH 1/1] virtio: add VIRTIO_F_IN_ORDER to header file Max Gurtovoy
2021-09-05 15:09 ` Michael S. Tsirkin
2021-09-05 15:09   ` Michael S. Tsirkin
2021-09-05 22:21   ` Max Gurtovoy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.