OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [virtio-comment] Re: [PATCH 0/2] Selective queue enabling



> From: Michael S. Tsirkin <mst@redhat.com>
> Sent: Tuesday, June 13, 2023 3:55 PM
> 
> I do not get how.  Let's make sure we are talking about the same thing.
> This is what I am saying:
> 
> Start operating:
> 
> - program queue address, size
> - queue_enable
> 
> Now we change our mind about queue size or address. So:
> 
> - queue_reset

Why queue_reset is needed here?
I don't see spec saying that queue_enable must be done only once for a given Q before DRIVER_OK.

> - program another queue address, size
> 
> Finally we are decided, let's start operating:
> 
> - DRIVER_OK
> 
> 
> I don't see how it's possible with just queue_enable.
> 
> 
> >
> > It is not explicitly mentioned in the spec that one can setup the queue using
> queue reset instead of queue enable.
> > As Jason mentioned it is implementation specific, one device supports it and
> one doesn't.
> > Hence, it will break on those devices which doesnt support it.
> >
> 
> Setup? No, and spec explicitly says to setup one has to use queue_enable. But
> this is not what we discussed with Stefano here.
> 
The above sequence you described is not well documented.

> > Therefore, I would like to add it to the spec.
> > "queue_reset register MUST be accessed by the driver only after device has
> reached the DRIVER_OK stage."
> 
> I don't think we can add MUST requirements after the proposal is in the
> released spec. If device has stricter requirements than the spec then it's not
> compliant.
>
Lets resolve above question first about how many times one can use queue_enable before DRIVER_OK for a specific VQ.
Without this either way driver and device combination is broken when queue_reset is used before DRIVER_OK.


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]