lkml.org 
[lkml]   [2009]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Subject[PATCH v2 0/4] Defer skb allocation for both mergeable buffers and big packets in virtio_net
    From
    Date
    This is a patch-set for deferring skb allocation based on Rusty and
    Michael's inputs.

    Guest virtio_net receives packets from its pre-allocated vring
    buffers, then it delivers these packets to upper layer protocols
    as skb buffs. So it's not necessary to pre-allocate skb for each
    mergable buffer, then frees it when it's useless.

    This patch has deferred skb allocation when receiving packets for
    both big packets and mergeable buffers. It reduces skb pre-allocations
    and skb_frees.

    A destroy function has been created to push virtio free buffs to vring
    for unused pages, and used page private to maintain page list.

    This patch has tested and measured against 2.6.32-rc7 git. It is built
    again 2.6.32 kernel. Tests have been done for small packets, big packets
    and mergeable buffers.

    The single netperf TCP_STREAM performance improved for host to guest.
    It also reduces UDP packets drop rate.

    Thanks
    Shirley



    \
     
     \ /
      Last update: 2009-12-11 13:31    [W:0.022 / U:0.384 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site