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