lkml.org 
[lkml]   [2010]   [Sep]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [RFC PATCH 2/2] macvtap: TX zero copy between guest and host kernel
    On Tue, Sep 28, 2010 at 08:24:29PM -0700, Shirley Ma wrote:
    > Hello Michael,
    >
    > On Wed, 2010-09-15 at 07:52 -0700, Shirley Ma wrote:
    > > > > Don't you think once I address vhost_add_used_and_signal update
    > > > > issue, it is a simple and complete patch for macvtap TX zero copy?
    > > > >
    > > > > Thanks
    > > > > Shirley
    > > >
    > > > I like the fact that the patch is simple. Unfortunately
    > > > I suspect it'll stop being simple by the time it's complete :)
    > >
    > > I can make a try. :)
    >
    > I compared several approaches for addressing the issue being raised here
    > on how/when to update vhost_add_used_and_signal. The simple approach I
    > have found is:
    >
    > 1. Adding completion field in struct virtqueue;
    > 2. when it is a zero copy packet, put vhost thread wait for completion
    > to update vhost_add_used_and_signal;
    > 3. passing vq from vhost to macvtap as skb destruct_arg;
    > 4. when skb is freed for the last reference, signal vq completion
    > The test results show same performance as the original patch. How do you
    > think? If it sounds good to you. I will resubmit this reversion patch.
    > The patch still keeps as simple as it was before. :)
    >
    > Thanks
    > Shirley

    If you look at dev_hard_start_xmit you will see a call
    to skb_orphan_try which often calls the skb destructor.
    So I suspect this is almost equivalent to your original patch,
    and has the same correctness issue.

    --
    MST


    \
     
     \ /
      Last update: 2010-09-29 10:25    [W:0.023 / U:90.024 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site