[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <trinity-c726d458-78f5-41bf-8d00-ac6d55a03c35-1487260948543@3capp-gmx-bs24>
Date:   Thu, 16 Feb 2017 17:02:28 +0100
From:   "Lino Sanfilippo" <LinoSanfilippo@....de>
To:     "David Laight" <David.Laight@...LAB.COM>
Cc:     "Pavel Belous" <Pavel.Belous@...antia.com>,
        "David S . Miller" <davem@...emloft.net>,
        "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
        "Simon Edelhaus" <Simon.Edelhaus@...antia.com>,
        "Alexey Andriyanov" <Alexey.Andriyanov@...antia.com>
Subject: Re: RE: [PATCH net-next 11/13] net: ethernet: aquantia: Refactoring
 buffers copying.
Hi,
> ...
> > Well, you should really try to avoid copying the tx buffers _at all_.
> > E.g. by passing self->buff_ring to aq_ring_tx_append_buffs() instead of
> > the temporary array.
> 
> Copying can help for horridly fragmented frames or when iommu (etc)
> setup is expensive.
> At least some ethernet hardware has minimum fragment lengths.
> 
I was referring to the copy of tx descriptors, not the frames/fragments itself. 
I wrote "tx buffers" because in this driver a descriptor is represented as
 a struct "aq_ring_buff_s". I cannot see a reason why this descriptor copy
 should be necessary.
However I agree that there can be circumstances that would justify even the
copy of frame/fragment data.
Regards,
Lino
Powered by blists - more mailing lists
 
