On 6/18/26 3:51 PM, David Marchand wrote:
> On Wed, 17 Jun 2026 at 23:25, Ilya Maximets <[email protected]> wrote:
>>
>> On 2/27/26 9:29 AM, David Marchand via dev wrote:
>>> Define a helper capable of segmenting packets from a batch and returning
>>> them in the input batch.
>>> This will allow calling GSO in other places of OVS during packet
>>> processing.
>>>
>>> Using this helper, we still need to ensure that the netdev ->send() op
>>> is called with only NETDEV_MAX_BURST packets.
>>
>> I wonder why?  There seems to be no actual limit for the Tx side, even
>> for dpdk ports.  There is a litmit technically, but it's UINT16_MAX,
>> which we should not be able to reach.  Or am I missing something?
> 
> I need to double check but I think it was related at least to the
> vhost library that limits to 32 packets.
> There may be other reasons... I did not take notes.

Looking at the DPDK code, virtio_dev_rx() indeed never sends more than
32 packets.  But we have retries on OVS side that should save us from
dropping remaining packets.  We could add a condition to do max_retries++
if we transmitted NETDEV_MAX_BURST packets, as it isn't actually a retry.
For non-vhost ports, we re-try on OVS side until the rte_eth_tx_burst()
can send at least one packet, so we should be good there.

Best regards, Ilya Maximets.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to