[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC PATCH 12/13] xen-netfront: implement TX persistent grants
On 12/05/15 18:18, Joao Martins wrote: > Instead of grant/revoking the buffer related to the skb, it will use > an already granted page and memcpy to it. The grants will be mapped > by xen-netback and reused overtime, but only unmapped when the vif > disconnects, as opposed to every packet. > > This only happens if the backend supports persistent grants since it > would, otherwise, introduce the overhead of a memcpy on top of the > grant map. [...] > --- a/drivers/net/xen-netfront.c > +++ b/drivers/net/xen-netfront.c [...] > @@ -1610,7 +1622,10 @@ static int xennet_init_queue(struct netfront_queue > *queue) > for (i = 0; i < NET_TX_RING_SIZE; i++) { > skb_entry_set_link(&queue->tx_skbs[i], i+1); > queue->grant_tx[i].ref = GRANT_INVALID_REF; > - queue->grant_tx[i].page = NULL; > + if (queue->info->feature_persistent) > + queue->grant_tx[i].page = alloc_page(GFP_NOIO); Need to check for alloc failure here and unwind correctly? Why NOIO? > + else > + queue->grant_tx[i].page = NULL; > } > > /* Clear out rx_skbs */ > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |