[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCHv1 net] xen-netback: use skb to determine number of required guest Rx requests



From: David Vrabel <david.vrabel@xxxxxxxxxx>
Date: Fri, 15 Jan 2016 10:31:57 +0000

> On 14/01/16 21:54, David Miller wrote:
>> From: David Vrabel <david.vrabel@xxxxxxxxxx>
>> Date: Thu, 14 Jan 2016 15:18:30 +0000
>> 
>>> -   needed = xenvif_rx_ring_slots_needed(queue->vif);
>>> +   skb = skb_peek(&queue->rx_queue);
>>> +   if (!skb)
>>> +           return false;
>>> +
>>> +   needed = DIV_ROUND_UP(skb->len, XEN_PAGE_SIZE);
>>> +   if (skb_is_gso(skb))
>>> +           needed++;
>> 
>> If I am not mistaken, we moved away from this kind of test exactly because
>> it is inaccurate and may under-estimate the needs.
>> 
>> It is possible for an N byte SKB to require N segments.  Therefore, the:
>> 
>>      DIV_ROUND_UP(skb->len, XEN_PAGE_SIZE);
>> 
>> calculation doesn't cut it.
> 
> After 1650d5455bd2dc6b5ee134bd6fc1a3236c266b5b (xen-netback: always
> fully coalesce guest Rx packets) we always fully pack a packet into its
> guest Rx slots.  Each slot has space for XEN_PAGE_SIZE bytes so this
> calculation for the number of slots is correct.
> 
> Shall I resend with a more description changelog?

Yeah that would help a lot.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.