Thread (40 messages) 40 messages, 6 authors, 2022-10-05

RE: [PATCH v5 2/2] virtio-net: use mtu size as buffer length for big packets

From: Parav Pandit <hidden>
Date: 2022-09-07 19:18:14
Also in: virtualization

From: Michael S. Tsirkin <mst@redhat.com>
Sent: Wednesday, September 7, 2022 3:12 PM
quoted
Because of shallow queue of 16 entries deep.
but why is the queue just 16 entries?
I explained the calculation in [1] about 16 entries.

[1] https://lore.kernel.org/netdev/PH0PR12MB54812EC7F4711C1EA4CAA119DC419@PH0PR12MB5481.namprd12.prod.outlook.com/ (local)
does the device not support indirect?
Yes, indirect feature bit is disabled on the device.
 
because with indirect you get 256 entries, with 16 s/g each.
Sure. I explained below that indirect comes with 7x memory cost that is not desired.
(Ignored the table memory allocation cost and extra latency).

Hence don't want to enable indirect in this scenario.
This optimization also works with indirect with smaller indirect table.
quoted
With driver turn around time to repost buffers, device is idle without any
RQ buffers.
quoted
With this improvement, device has 85 buffers instead of 16 to receive
packets.
quoted
Enabling indirect in device can help at cost of 7x higher memory per VQ in
the guest VM.
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help