Re: [virtio-dev] Re: [PATCH v9] virtio-net: support the virtqueue coalescing moderation

2023-02-27 Thread Alvaro Karsz
> > I see your point, but a reader will see the "global notifications > > coalescing parameter" concept, and won't know what it is until next > > paragraph. > > Maybe we can have a new list with the notification coalescing concepts > > (like the notification coalescing parameters)? Just throwing

Re: [virtio-dev] Re: [PATCH v9] virtio-net: support the virtqueue coalescing moderation

2023-02-27 Thread Alvaro Karsz
> >> -If the VIRTIO_NET_F_NOTF_COAL feature is negotiated, the driver can > >> -send control commands for dynamically changing the coalescing parameters. > >> +If the VIRTIO_NET_F_NOTF_COAL feature is negotiated, the driver can send > >> the VIRTIO_NET_CTRL_NOTF_COAL_TX_SET > >> +and

[virtio-dev] Re: [PATCH v9] virtio-net: support the virtqueue coalescing moderation

2023-02-26 Thread Alvaro Karsz
n Zhuo > --- > This patch is on top of Alvaro's latest v7 patch: > https://lists.oasis-open.org/archives/virtio-dev/202302/msg00431.html . > > v8->v9: >1. Declare the commands that can be sent for each feature. @Alvaro > Karsz >2. Add information about "

[virtio-dev] Re: [PATCH v2] virtio-net: define the VIRTIO_NET_F_CTRL_RX_EXTRA feature bit

2023-02-26 Thread Alvaro Karsz
I'd like to propose this patch for a TC vote. Thanks :) - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] Re: [PATCH v8] virtio-net: support the virtqueue coalescing moderation

2023-02-25 Thread Alvaro Karsz
> A general note, > > Correct my if I'm wrong, but the fact that a driver can't send > VIRTIO_NET_CTRL_NOTF_COAL_[T/R]X_SET commands if > VIRTIO_NET_F_NOTF_COAL is not negotiated isn't explicitly mentioned > anywhere. > A reader may think that the commands cant be sent if I meant "can", not

[virtio-dev] Re: [PATCH v8] virtio-net: support the virtqueue coalescing moderation

2023-02-25 Thread Alvaro Karsz
close to 2". @Michael S . Tsirkin, @David Edmondson > > v6->v7: >1. Clarify the relationship of VIRTIO_NET_CTRL_NOTF_COAL_TX/RX_SET and > VIRTIO_NET_CTRL_NOTF_COAL_VQ_SET. @Alvaro Karsz, @Michael S. Tsirkin >2. Remove the formula for vqn range. @Parav Pandit &

[virtio-dev] [PATCH v2] virtio-net: define the VIRTIO_NET_F_CTRL_RX_EXTRA feature bit

2023-02-22 Thread Alvaro Karsz
t;. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/162 Signed-off-by: Alvaro Karsz --- v2: - Rephrase commit log, no changes to patch body. device-types/net/description.tex | 8 1 file changed, 8 insertions(+) diff --git a/device-types/net/description.tex b/device

[virtio-dev] Re: [virtio-comment] [PATCH v6] virtio-net: support the virtqueue coalescing moderation

2023-02-22 Thread Alvaro Karsz
alescing parameters for vq > reset. @Michael S. Tsirkin >4. Fix some syntax errors. @Michael S. Tsirkin, @David Edmondson > > v3->v4: >1. Include virtio_net_ctrl_coal in the virtio_net_ctrl_coal_vq > structure. @Alvaro Karsz >2. Add consideration of

Re: [virtio-dev] [PATCH v3] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-20 Thread Alvaro Karsz
> Minor nit (for the next time, was trivial to fix up): Putting your s-o-b > beneath the "---" instructs git am to cut it off; the changelog should > go below the s-o-b. You're right, sorry, I missed it. - To unsubscribe,

Re: [virtio-dev] Re: [PATCH] virtio-net: define the VIRTIO_NET_F_CTRL_RX_EXTRA feature bit

2023-02-20 Thread Alvaro Karsz
Hi, > I agree that we need to stick with SHOULD here. > > Are VIRTIO_NET_F_CTRL_RX_EXTRA and VIRTIO_NET_F_CTRL_RX independent of > each other, i.e. can you negotiate VIRTIO_NET_F_CTRL_RX_EXTRA but not > VIRTIO_NET_F_CTRL_RX? Looks like it to me, but would like to confirm. > (We would at most be

[virtio-dev] Re: [PATCH] virtio-net: define the VIRTIO_NET_F_CTRL_RX_EXTRA feature bit

2023-02-20 Thread Alvaro Karsz
I didn't add the control vq feature as a feature bit requirement for the same reason as [1]. If you think that we can add a feature bit requirement instead of "SHOULD NOT offer" and "SHOULD NOT negotiate", I can add it in v2. [1] https://github.com/oasis-tcs/virtio-spec/issues/158

[virtio-dev] [PATCH] virtio-net: define the VIRTIO_NET_F_CTRL_RX_EXTRA feature bit

2023-02-20 Thread Alvaro Karsz
t;. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/162 Signed-off-by: Alvaro Karsz --- device-types/net/description.tex | 8 1 file changed, 8 insertions(+) diff --git a/device-types/net/description.tex b/device-types/net/description.tex index 8487ccd..cf37da5 100644 --- a/de

[virtio-dev] Re: [PATCH v7] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-19 Thread Alvaro Karsz
I'd like to propose this patch for a TC vote. Thanks :) - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] [PATCH v7] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-19 Thread Alvaro Karsz
coalescing operation. Fixes: https://github.com/oasis-tcs/virtio-spec/issues/159 Signed-off-by: Alvaro Karsz Reviewed-by: Parav Pandit Acked-by: Michael S. Tsirkin --- v2: - Add the last 2 points to the patch. - Rephrase the "commands are best-effort" note.

[virtio-dev] Re: [PATCH v6] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-19 Thread Alvaro Karsz
Heng, Thanks for your work too! Michael, Thanks, I"ll fix the grammar in v7. - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] [PATCH v6] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-19 Thread Alvaro Karsz
coalescing operation. Signed-off-by: Alvaro Karsz Reviewed-by: Parav Pandit --- v2: - Add the last 2 points to the patch. - Rephrase the "commands are best-effort" note. - Replace "notification" with "used buffer notification" to be more

Re: [virtio-dev] Re: [PATCH v3] virtio-net: support the virtqueue coalescing moderation

2023-02-17 Thread Alvaro Karsz
> Not good. I feel we must come up with spec that is backwards compatible. > Hmm, maybe this is why Parav kept talking about modes. > I did not realize at the time, sorry Parav. > > I still feel modes are not the best way to describe things so I propose this: > - in addition to per vq parameters,

Re: [virtio-dev] Re: [PATCH v3] virtio-net: support the virtqueue coalescing moderation

2023-02-17 Thread Alvaro Karsz
> > Yes, max_packets and max_usecs SHOULD be reset to 0. > > When the virtqueue is re-enabled, it means that notification conditions are > > met after each packet is sent/received. > > > > As described by Alvaro in "[PATCH v5] virtio-net: Fix and update > > VIRTIO_NET_F_NOTF_COAL feature": > >

[virtio-dev] Re: [PATCH v5] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-17 Thread Alvaro Karsz
> sounds good. maybe "counting packets and microseconds"? to make clear > timer resets too. > > > I don't really mind, If you think that the device implementation is > > not essential here and we should add your suggestion, I'm ok with > > that. > > I don't mind, your proposal seems good too. Ok,

[virtio-dev] Re: [PATCH v5] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-17 Thread Alvaro Karsz
> Looks good, thanks! Yet something to improve, see below: > > --- > > v2: > > - Add the last 2 points to the patch. > > - Rephrase the "commands are best-effort" note. > > - Replace "notification" with "used buffer notification" to be > > more consistent. > > v3: > >

Re: [virtio-dev] Re: [virtio-comment] [PATCH v3] virtio-net: support the virtqueue coalescing moderation

2023-02-17 Thread Alvaro Karsz
> > Maybe we can use struct virtio_net_ctrl_coal inside struct > > virtio_net_ctrl_coal_vq instead of repeating max_usecs and > > max_packets? > > I'm not sure if it would be confusing, what do you think? > > > > Hi Alvaro. > > I guess you mean one of the following two forms: > > #1 > struct

[virtio-dev] Re: [virtio-comment] [PATCH v3] virtio-net: support the virtqueue coalescing moderation

2023-02-17 Thread Alvaro Karsz
Hi Heng, > +\item[VIRTIO_NET_F_VQ_NOTF_COAL(52)] Device supports the virtqueue > +notifications coalescing. > + > \item[VIRTIO_NET_F_NOTF_COAL(53)] Device supports notifications coalescing. > > \item[VIRTIO_NET_F_GUEST_USO4 (54)] Driver can receive USOv4 packets. > @@ -3140,6 +3143,7 @@

[virtio-dev] [PATCH v5] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-16 Thread Alvaro Karsz
coalescing operation. Signed-off-by: Alvaro Karsz --- v2: - Add the last 2 points to the patch. - Rephrase the "commands are best-effort" note. - Replace "notification" with "used buffer notification" to be more consistent. v3: - Add

[virtio-dev] Re: [virtio-comment] Re: [PATCH v4] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-16 Thread Alvaro Karsz
> > Actually, no. > > \field{usecs} refers to the field in the struct. > > usecs refers to the units of measurement. > > > > So if for example \field{usecs} = 40, then it evaluates to 40 usecs -> > > "are met when 40 usecs elapses". > > But this is not how it reads, people are not computers, and

[virtio-dev] Re: [virtio-comment] Re: [PATCH v4] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-16 Thread Alvaro Karsz
Hi Heng, > > +When the device has non-zero \field{usecs} and non-zero > > \field{max_packets}, it starts counting usecs and packets upon > > receiving/sending a packet. > > +The device counts packets and usecs for each receive virtqueue and > > transmit virtqueue separately. > > +In this case,

[virtio-dev] [PATCH v4] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-15 Thread Alvaro Karsz
coalescing operation. Signed-off-by: Alvaro Karsz --- v2: - Add the last 2 points to the patch. - Rephrase the "commands are best-effort" note. - Replace "notification" with "used buffer notification" to be more consistent. v3: - Add

[virtio-dev] Re: [virtio-comment] [PATCH v3] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-15 Thread Alvaro Karsz
> > +\begin{note} > > +In general, these commands are best-effort: spurious notifications could > > still arrive. > > +\end{note} > > This is quite vague. How about: > > The behaviour of the device in response to these commands is > best-effort: the device may generate notifications more

[virtio-dev] Re: [virtio-comment] [PATCH v3] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-15 Thread Alvaro Karsz
> > +\begin{note} > > +In general, these commands are best-effort: spurious notifications could > > still arrive. > > +\end{note} > > This is quite vague. How about: > > The behaviour of the device in response to these commands is > best-effort: the device may generate notifications more

[virtio-dev] Re: [PATCH v3] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-15 Thread Alvaro Karsz
Thanks. I'll send v4 tomorrow. - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] [PATCH v3] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-15 Thread Alvaro Karsz
coalescing operation. Signed-off-by: Alvaro Karsz --- v2: - Add the last 2 points to the patch. - Rephrase the "commands are best-effort" note. - Replace "notification" with "used buffer notification" to be more consistent. v3: - Add

[virtio-dev] Re: [PATCH v2] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-13 Thread Alvaro Karsz
> ok so the event we are looking for is "coalescing parameters are met". > It is ok but I would like something that works even if > there is no coalescing. How about "notification conditions are met" then? > The coalescing parameters specify the conditions then > Sounds good.

[virtio-dev] Re: [PATCH v2] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-13 Thread Alvaro Karsz
I'll add an intro explaining how the entire coalescing thing works, without relying on the examples. > > How about adding the following line in the main paragraph: > > > > Coalescing parameters are met when the number of sent/received packets > > reaches \field{tx_max_packets} since the last used

[virtio-dev] Re: [PATCH v2] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-13 Thread Alvaro Karsz
> > +Every transmit and receive virtqueue needs to count its own packets and > > should not be affected by notifications sent by other virtqueues. > > I find this slightly confusing in that it describes counting > which we did not previously mention. and it is not virtqueue iself > counting of

[virtio-dev] Re: [PATCH v2] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-13 Thread Alvaro Karsz
Splitting this patch as suggested in v1 will be messy, We have lines affected by multiple changes, for example: +\item VIRTIO_NET_CTRL_NOTF_COAL_RX_SET: set the \field{usecs} and \field{max_packets} parameters for all the receive virtqueues. Is affected by the consolidation of the structs and

[virtio-dev] [PATCH v2] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-13 Thread Alvaro Karsz
the behavior of coalescing with regards to delivering notifications when a change occur. - Stating that the commands should apply to all the receive/transmit virtqueues. - Stating that every receive/transmit virtqueue should count it's own packets. Signed-off-by: Alvaro Karsz --- v2

[virtio-dev] Re: [virtio-comment] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-12 Thread Alvaro Karsz
> I'm not sure the specific property is even a feature and not a bug. > One can argue e.g. that ethtool should fail with EBUSY rather > than being silently overwritten. > Thats why I feel this kind of policy is best set by driver. When you write "set by driver", you mean that [X] the spec needs

[virtio-dev] Re: [virtio-comment] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-11 Thread Alvaro Karsz
I think that I wasn't clear enough. I'm not saying that we should not define in the spec how to handle a situation when a device receives both RX_SET and VQ_SET (or a driver sends both). I'm saying that I don't think that the driver should handle the situation the way you described it: > When

[virtio-dev] Re: [virtio-comment] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-11 Thread Alvaro Karsz
You write "both are configured", "try to configure both", "disable one and switch to other" "mixed mode" etc.. But no modes/levels are mentioned in the patch, not once. I totally agree that *if* we define 2 modes, we should have strict rules on how to switch between modes and how to operate with

[virtio-dev] Re: [virtio-comment] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-11 Thread Alvaro Karsz
> >> Please add short description something like, > >> > >> When the driver prefers to use per virtqueue notifications coalescing, and > >> if queue group (transmit or receive) level notification coalescing is > >> enabled, driver SHOULD first disable device level notification coalescing. > >>

[virtio-dev] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-11 Thread Alvaro Karsz
> > Please add short description something like, > > > > When the driver prefers to use per virtqueue notifications coalescing, and > > if queue group (transmit or receive) level notification coalescing is > > enabled, driver SHOULD first disable device level notification coalescing. > > Or it

Re: [virtio-dev] Re: [PATCH v3] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-11 Thread Alvaro Karsz
> I missed your previous response. > Sorry for the late response. No problem at all :) > Why cannot device say as MUST requirement? > > Let say there is a device out that exposes a F_HASH_REPORT without F_CTRL_VQ. > So driver tried to send a command and failed to issue cmd. > End result, hash

[virtio-dev] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-11 Thread Alvaro Karsz
> Please add short description something like, > > When the driver prefers to use per virtqueue notifications coalescing, and if > queue group (transmit or receive) level notification coalescing is enabled, > driver SHOULD first disable device level notification coalescing. > Or it should be, >

[virtio-dev] Re: [PATCH v3] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-10 Thread Alvaro Karsz
Should we have a vote? Fixes: https://github.com/oasis-tcs/virtio-spec/issues/158 - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] Re: [virtio-comment] [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-10 Thread Alvaro Karsz
> >> So, should we remove VIRTIO_NET_F_CTRL_VQ here, or fix > >> VIRTIO_NET_F_HOST_ECN? > > Ah good point. > > But I think VIRTIO_NET_F_VQ_NOTF_COAL should not depend on > > VIRTIO_NET_F_NOTF_COAL. > > This way devices can drop the all-rx/all-tx commands if they want to. > > We need to confirm

[virtio-dev] Re: [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-10 Thread Alvaro Karsz
} instead of the qid. @Michael S. Tsirkin > > 3. Unify tx and rx control structres into one structure > > virtio_net_ctrl_coal_vq. @Michael S. Tsirkin > > 4. Add a new control command VIRTIO_NET_CTRL_NOTF_COAL_VQ. @Michael S. > > Tsirkin, @Parav Pandit, @Alvaro Karsz > >

[virtio-dev] Re: [virtio-comment] [PATCH v2] virtio-net: support the virtqueue coalescing moderation

2023-02-10 Thread Alvaro Karsz
_NOTF_COAL. > @Michael S. Tsirkin > 2. Use the \field{vqn} instead of the qid. @Michael S. Tsirkin > 3. Unify tx and rx control structres into one structure > virtio_net_ctrl_coal_vq. @Michael S. Tsirkin > 4. Add a new control command VIRTIO_NET_CTRL_NOTF_COAL_VQ. @Mi

[virtio-dev] Re: [virtio-comment] [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-08 Thread Alvaro Karsz
Maybe we should do something more future friendly. We may want to add more coalescing related features in the future. * Maybe max/min sets? * Maybe to offload the adaptive algo to the DPU? It will require more feature bits.. We could rename this new feature from VIRTIO_NET_F_PERQUEUE_NOTF_COAL

[virtio-dev] Re: [virtio-comment] [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-08 Thread Alvaro Karsz
> > From: Alvaro Karsz > > Sent: Wednesday, February 8, 2023 4:56 PM > > > > Alvaro, > > > Do you know if any software used it? Can you get some real data? > > > > I implemented this feature in our DPU, so at least 1 vendor is using this > >

[virtio-dev] Re: [virtio-comment] [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-08 Thread Alvaro Karsz
> > From: Michael S. Tsirkin > > Sent: Wednesday, February 8, 2023 3:52 PM > > > > On Wed, Feb 08, 2023 at 07:53:09PM +0200, Alvaro Karsz wrote: > > > > > From: Michael S. Tsirkin > > > > > Sent: Wednesday, February 8, 2023 9:48 AM > &

[virtio-dev] Re: [virtio-comment] [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-08 Thread Alvaro Karsz
> On Wed, Feb 08, 2023 at 07:53:09PM +0200, Alvaro Karsz wrote: > > > > From: Michael S. Tsirkin > > > > Sent: Wednesday, February 8, 2023 9:48 AM > > > > > > > > On Wed, Feb 08, 2023 at 02:44:37PM +, Parav Pandit wrote: > > >

[virtio-dev] Re: [virtio-comment] RE: [virtio-dev] [PATCH] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-08 Thread Alvaro Karsz
> > From: Michael S. Tsirkin > > Sent: Wednesday, February 8, 2023 12:39 PM > > > > On Wed, Feb 08, 2023 at 05:30:28PM +, Parav Pandit wrote: > > > > From: Michael S. Tsirkin > > > > Sent: Tuesday, February 7, 2023 9:18 AM > > > > > > > > Why migration generate too many spurious interrupts?

[virtio-dev] Re: [virtio-comment] [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-08 Thread Alvaro Karsz
> > From: Michael S. Tsirkin > > Sent: Wednesday, February 8, 2023 9:48 AM > > > > On Wed, Feb 08, 2023 at 02:44:37PM +, Parav Pandit wrote: > > > > > > > From: Michael S. Tsirkin > > > > Sent: Wednesday, February 8, 2023 9:43 AM > > > > > > > > On Wed, Feb 08, 2023 at 02:37:55PM +,

[virtio-dev] Re: [virtio-comment] RE: [virtio-dev] [PATCH v3] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-08 Thread Alvaro Karsz
Do you want a new version? This one seems fine to me. - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] Re: [virtio-comment] RE: [virtio-dev] [PATCH] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-08 Thread Alvaro Karsz
Seems that we still have some disagreements here. Should I remove the "best effort" note? I actually think that this is a good note, but I'll remove it if you think that I should. Should I replace TX and RX with receive virtqueue and transmit virtqueue? This may be related to Heng's patch, so

Re: [virtio-dev] Re: [virtio-comment] Re: [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-07 Thread Alvaro Karsz
> An example of a question is this: we have two RX queues say 1 and 2 each > with a distinct interrupt vector. coalescing is set to 10 packets. Now > 9 packets arrive on queue 1 and 1 on queue 2. Do you expect an > interrupt? If yes which one - 1 or 2 or both? Sorry, I wasn't clear enough. In

Re: [virtio-dev] Re: [virtio-comment] Re: [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-07 Thread Alvaro Karsz
> Arguably it's true. > It will all be up to the committee vote of course ... > To keep things a bit safer how about we just allow commands > without qid instead of a special qid value? > Also if we are going to change things how about adding a query command too? > > Also Alvaro what is your take

[virtio-dev] Re: [PATCH] virtio-net: support per-queue coalescing moderation

2023-02-07 Thread Alvaro Karsz
Hi Heng, > Currently, the coalescing profile is directly applied to all queues. > This patch supports configuring the parameters for a specified queue. > > When the traffic between queues is unbalanced, for example, one queue > is busy and another queue is idle, then it will be very useful to >

Re: [virtio-dev] [PATCH] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-07 Thread Alvaro Karsz
Hi Parav, thanks for the comments. > > +Note: In general, these commands are best-effort: A device could send a > > notification even if it is not supposed to. > > > Please remove this note from this patch. > Instead of Note, we need to describe this device requirements description. > We better

Re: [virtio-dev] [PATCH v3] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-06 Thread Alvaro Karsz
Hi Parav, > > +A driver SHOULD NOT negotiate VIRTIO_NET_F_HASH_REPORT if it does not > > +negotiate VIRTIO_NET_F_CTRL_VQ. > > + > Same for the driver too. > Like below. > The driver should not negotiate a feature that requires to use a control VQ > when VIRTIO_NET_F_CTRL_VQ is not negotiated.

[virtio-dev] [PATCH] virtio-net: Fix and update VIRTIO_NET_F_NOTF_COAL feature

2023-02-06 Thread Alvaro Karsz
the behavior of coalescing with regards to delivering notifications when a change occur. Signed-off-by: Alvaro Karsz --- device-types/net/description.tex | 40 ++-- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/device-types/net/description.tex b

[virtio-dev] Re: [virtio-comment] Re: [virtio-dev] [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-02-06 Thread Alvaro Karsz
Hi, I'm going to drop this patch and focus on a new patch to fix the existing notification coalescing feature, including: - Unifying the virtio_net_ctrl_coal structs. - Clarifying that the coalescing commands are best-effort. - Specifying coalescing in respect to delivering interrupts when config

[virtio-dev] [PATCH v3] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-06 Thread Alvaro Karsz
: Explain the dependency in a less confusing way. Signed-off-by: Alvaro Karsz device-types/net/description.tex | 6 ++ 1 file changed, 6 insertions(+) diff --git a/device-types/net/description.tex b/device-types/net/description.tex index 700a1cb..1741c79 100644 --- a/device-types/net

[virtio-dev] [PATCH v2] virtio-net: Mention VIRTIO_NET_F_HASH_REPORT dependency on VIRTIO_NET_F_CTRL_VQ

2023-02-05 Thread Alvaro Karsz
-off-by: Alvaro Karsz device-types/net/description.tex | 5 + 1 file changed, 5 insertions(+) diff --git a/device-types/net/description.tex b/device-types/net/description.tex index 700a1cb..4270481 100644 --- a/device-types/net/description.tex +++ b/device-types/net/description.tex @@ -256,6

[virtio-dev] [PATCH] virtio-net: Mention that VIRTIO_NET_F_HASH_REPORT requires VIRTIO_NET_F_CTRL_VQ

2023-02-05 Thread Alvaro Karsz
If the VIRTIO_NET_F_HASH_REPORT feature is negotiated, the driver may send VIRTIO_NET_CTRL_MQ_HASH_CONFIG commands, thus, the control VQ feature must be negotiated. Signed-off-by: Alvaro Karsz --- device-types/net/description.tex | 1 + 1 file changed, 1 insertion(+) diff --git a/device-types

Re: [virtio-dev] [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-01-17 Thread Alvaro Karsz
> By comparison this patch is an attempt to offload ethtool's > --coalesce parameters to the card. IMO what it misses is > completeness, e.g. sample-interval is not specified. AFAIK sample-interval refers to the adaptive coalescing (adaptive-rx/adaptive-tx) and not to high/low.

Re: [virtio-dev] [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-01-17 Thread Alvaro Karsz
Hi, > > This patch adds a new feature, VIRTIO_NET_F_NOTF_COAL_LOW_HIGH, while > > clarifying/fixing existing coalescing concepts. > > > While its visible in the patch itself, what is being done, > its important to mention the problem statement/motivation for the feature at > start of the commit

[virtio-dev] Re: [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-01-17 Thread Alvaro Karsz
> > #define VIRTIO_NET_CTRL_NOTF_COAL 6 > > #define VIRTIO_NET_CTRL_NOTF_COAL_TX_SET 0 > > #define VIRTIO_NET_CTRL_NOTF_COAL_RX_SET 1 > > + #define VIRTIO_NET_CTRL_NOTF_COAL_LOW_TX_SET 2 //Only if > > VIRTIO_NET_F_NOTF_COAL_LOW_HIGH negotiated > > + #define

[virtio-dev] Re: [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-01-16 Thread Alvaro Karsz
ping - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

[virtio-dev] Re: [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-01-11 Thread Alvaro Karsz
oal structs, since the one for tx > and the one for rx are identical. > - Clarifies that the coalescing commands are best-effort. > - Specifies coalescing in respect to delivering interrupts when config > changes. > > Signed-off-by: Alvaro Karsz

[virtio-dev] [PATCH v2] virtio_net: support low and high rate of notification coalescing

2023-01-11 Thread Alvaro Karsz
-off-by: Alvaro Karsz --- v2: - Remove the "set of coalescing parameters" concept, use "coalescing parameters" instead. - Unify struct virtio_net_ctrl_coal_rx and strcut virtio_net_ctrl_coal_tx to struct virtio_net_ctrl_coal. - Separat

[virtio-dev] Re: [PATCH] virtio_net: support low and high rate of notification coalescing sets

2023-01-04 Thread Alvaro Karsz
> > is it really true we always want the same rate for tx and rx? > > why not separate commands for each? this is the way we went > > for general coalescing at least. > > I actually had ethtool in mind while writing the patch. > AFAIK ethtool has a single rate for both rx and tx low/high, so using

[virtio-dev] Re: [PATCH] virtio_net: support low and high rate of notification coalescing sets

2023-01-04 Thread Alvaro Karsz
Thanks for your comments. > On Wed, Dec 21, 2022 at 12:17:29PM +0200, Alvaro Karsz wrote: > > This patch adds a new feature VIRTIO_NET_F_NOTF_COAL_LOW_HIGH, > > and adds 2 new commands to VIRTIO_NET_CTRL_NOTF_COAL class: > > * VIRTIO_NET_CTRL_NOTF_COAL_LOW_SET -

[virtio-dev] Re: [PATCH] virtio_net: support low and high rate of notification coalescing sets

2023-01-04 Thread Alvaro Karsz
Ping - To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org

Re: [virtio-dev] [PATCH] virtio_net: support low and high rate of notification coalescing sets

2022-12-21 Thread Alvaro Karsz
Hi, > I want to know which one is better than NetDim(Coalesce Adaptive) in driver. > > I know Heng Qi's work in this. > > Thanks Why choose? we can have both. ethtool can handle both pkt_rate_low/pkt_rate_high and use_adaptive_rx_coalesce/use_adaptive_tx_coalesce. The adaptive algorithm can

[virtio-dev] [PATCH] virtio_net: support low and high rate of notification coalescing sets

2022-12-21 Thread Alvaro Karsz
may have up to 3 sets, and should switch between them based on the packet rate. Signed-off-by: Alvaro Karsz --- content.tex | 61 - 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/content.tex b/content.tex index 96f4723..969f945