lkml.org 
[lkml]   [2015]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH RFC] tun, macvtap: higher order allocations for skbs


    On 06/29/2015 12:50 PM, Jason Wang wrote:
    >
    > On 06/18/2015 06:20 PM, Michael S. Tsirkin wrote:
    >> Needs more testing. Anyone see anything wrong with this?
    >>
    >> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    >> ---
    >> drivers/net/macvtap.c | 2 +-
    >> drivers/net/tun.c | 2 +-
    >> 2 files changed, 2 insertions(+), 2 deletions(-)
    >>
    >> diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
    >> index 928f3f4..80e87e4 100644
    >> --- a/drivers/net/macvtap.c
    >> +++ b/drivers/net/macvtap.c
    >> @@ -610,7 +610,7 @@ static inline struct sk_buff *macvtap_alloc_skb(struct sock *sk, size_t prepad,
    >> linear = len;
    >>
    >> skb = sock_alloc_send_pskb(sk, prepad + linear, len - linear, noblock,
    >> - err, 0);
    >> + err, 1);
    >> if (!skb)
    >> return NULL;
    >>
    >> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
    >> index cb376b2d..8f2f1e5 100644
    >> --- a/drivers/net/tun.c
    >> +++ b/drivers/net/tun.c
    >> @@ -1069,7 +1069,7 @@ static struct sk_buff *tun_alloc_skb(struct tun_file *tfile,
    >> linear = len;
    >>
    >> skb = sock_alloc_send_pskb(sk, prepad + linear, len - linear, noblock,
    >> - &err, 0);
    >> + &err, 1);
    >> if (!skb)
    >> return ERR_PTR(err);
    >>
    > Have a round of netperf testing in tun and ixgbe, can see improvement on
    > packet size 512 and 2048.
    >
    > TX:
    > size/session/+thu%/+normalize%
    > 64/ 1/ 0%/ 0%
    > 64/ 4/ 0%/ 0%
    > 512/ 1/ +6%/ +7%
    > 512/ 4/ +2%/ +2%
    > 2048/ 1/ +24%/ +50%
    > 2048/ 4/ 0%/ +6%
    > 16384/ 1/ 0%/ -6%
    > 16384/ 4/ 0%/ -5%
    > 65535/ 1/ 0%/ -4%
    > 65535/ 4/ 0%/ -1%
    > RX:
    > size/session/+thu%/+normalize%
    > 64/ 1/ -5%/ -4%
    > 64/ 4/ -2%/ -1%
    > 512/ 1/ -7%/ -8%
    > 512/ 4/ 0%/ 0%
    > 2048/ 1/ +4%/ +7%
    > 2048/ 4/ 0%/ +2%
    > 16384/ 1/ 0%/ +2%
    > 16384/ 4/ 0%/ +13%
    > 65535/ 1/ 0%/ 0%
    > 65535/ 4/ 0%/ -1%
    > TCP_RR:
    > size/session/+thu%/+normalize%
    > 1/ 25/ 0%/ 0%
    > 1/ 50/ 0%/ 0%
    > 64/ 25/ 0%/ -1%
    > 64/ 50/ 0%/ 0%
    > 256/ 25/ 0%/ 0%
    > 256/ 50/ 0%/ 0%
    >

    Done another test through pktgen in guest with my tx interrupt patches,
    see little regression with this patch:

    size/before(pps)/after(pps)
    64/578689/573004
    8192/332698/322733
    16384/241497/237326




    \
     
     \ /
      Last update: 2015-06-29 12:41    [W:2.200 / U:0.436 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site