[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [virtio-comment] [PATCH v4] Introduction of Virtio Network device notifications coalescing feature.
On Wed, Jun 01 2022, Alvaro Karsz <alvaro.karsz@solid-run.com> wrote: > Control a network device notifications coalescing parameters using the control virtqueue. > A new control class was added: VIRTIO_NET_CTRL_NOTF_COAL. > > This class provides 2 commands: > - VIRTIO_NET_CTRL_NOTF_COAL_TX_SET: > Ask the network device to change the tx_usecs and tx_max_buffers parameters. > - tx_usecs: Time to delay a notification after a TX buffer is used in microseconds. > - tx_max_buffers: Number of TX buffers to delay a notification after a TX buffer is used. > > - VIRTIO_NET_CTRL_NOTF_COAL_RX_SET: > Ask the network device to change the rx_usecs and rx_max_buffers parameters. > - rx_usecs: Time to delay a notification after a RX buffer is used in microseconds. > - rx_max_buffers: Number of RX buffers to delay a notification after a RX buffer is used. > -- > v2: > - Usage of notification terminology. > - Add a few lines on what device should do when driver asked to > suppress notifications. > > v3: > - Remove whitespaces. > - Explain with examples how the device should act. > > v4: > - Example of a scenarion when VIRTIO_F_EVENT_IDX is negotiated. > - Usage of separate commands for RX coalescing and TX coalescing. > -- > > Signed-off-by: Alvaro Karsz <alvaro.karsz@solid-run.com> > --- > content.tex | 88 +++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 88 insertions(+) > (...) > +\drivernormative{\subparagraph}{Notifications Coalescing}{Device Types / Network Device / Device Operation / Control Virtqueue / Notifications Coalescing} > + > + > +If the VIRTIO_NET_F_NOTF_COAL feature has not been negotiated, the driver MUST NOT issue VIRTIO_NET_CTRL_NOTF_COAL commands. > + > +\devicenormative{\subparagraph}{Notifications Coalescing}{Device Types / Network Device / Device Operation / Control Virtqueue / Notifications Coalescing} > + > +A device SHOULD respond to the VIRTIO_NET_CTRL_NOTF_COAL commands with VIRTIO_NET_ERR if was not able to change the parameters.\\ \\ > +A device MUST NOT accept tx_buffers_max/rx_buffers_max values bigger than the virtqueue size.\\ \\ > +A device SHOULD NOT send notifications to the driver, if the notifications are suppressed.\\ \\ > +A device SHOULD initialize all coalescing values to 0, meaning that a notification is sent after every used buffer (if events aren't suppressed). \\ \\ > + > + I think these are missing being referenced in conformance.tex? [This seems to be easy to miss, I also noticed missing statements while preparing the changelong for 1.2. Should the build process maybe check that conformance sections are hooked up properly?]
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]