[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [7/11] [NET] back: Added tx queue
On 7 Jul 2006, at 15:19, Herbert Xu wrote: ET] back: Added tx queue This patch adds a tx queue to the backend if the frontend supports rx refill notification. A queue is needed because SG/TSO greatly reduces the number of packets that can be stored in the rx ring. Given an rx ring with 256 entries, a maximum TSO packet can occupy as many as 18 entries, meaning that the entire ring can only hold 14 packets. This is too small at high bandwidths with large TCP RX windows. Having a tx queue does not present a new security risk as the queue is a fixed size buffer just like rx ring. So each guest can only hold afixed amount of memory (proportional to the tx queue length) on the host.Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> What's the default queue size? It shouldn't be too large if each packet can be 64kB! Also, what does NETIF_F_LLTX have to do with whether we have a queue or not -- couldn't we set that all the time? And you set queue length to 1 in the other case -- what's wrong with zero? Seems a saner value when there is no queue: or do we need to commit to having *some* queue at register_netdevice() time, and there's no way to go back from that by the time we find out if netfront supports rx refill notifications (so at that point we cannot change queue len to zero)? -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |