Messages in this thread | | | Subject | Re: [Xen-devel] [PATCH] xen/netfront: raise max number of slots in xennet_get_responses() | From | Juergen Gross <> | Date | Tue, 12 Jun 2018 08:45:30 +0200 |
| |
On 11/06/18 20:59, Boris Ostrovsky wrote: > On 06/11/2018 03:57 AM, Juergen Gross wrote: >> The max number of slots used in xennet_get_responses() is set to >> MAX_SKB_FRAGS + (rx->status <= RX_COPY_THRESHOLD). >> >> In old kernel-xen MAX_SKB_FRAGS was 18, while nowadays it is 17. This >> difference is resulting in frequent messages "too many slots" and a >> reduced network throughput for some workloads (factor 10 below that of >> a kernel-xen based guest). >> >> Replacing MAX_SKB_FRAGS by XEN_NETIF_NR_SLOTS_MIN for calculation of >> the max number of slots to use solves that problem (tests showed no >> more messages "too many slots" and throughput was as high as with the >> kernel-xen based guest system). >> >> Signed-off-by: Juergen Gross <jgross@suse.com> > > Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> > > I wonder also whether netfront_tx_slot_available() is meant to be > > return (queue->tx.req_prod_pvt - queue->tx.rsp_cons) < > (NET_TX_RING_SIZE - XEN_NETIF_NR_SLOTS_MIN - 1); > > which is the same numeric value but provides a more accurate description > of what is being tested.
Yes, this is a sensible idea. I'll add that, keeping your R-b.
Juergen
| |