On Tue, Mar 23, 2010 at 09:30:10AM +0800, Zhu Yi wrote: > On Mon, 2010-03-22 at 22:13 +0800, Stanislaw Gruszka wrote: > > > > Changing default options in upstream kernel is problematic. Since > > 2.6.33 we have different memory allocations to avoid failures due to > > buddy allocator fragmentation. It is optimized for normal usage case, > > but with swcrypto when and skb's have to be linearized memory usage by > > driver increase about 2 times. > > Have you benchmarked about this change? No, not really. > Before paged Rx skb is used, we > have to allocate (8K + sizeof(struct skb_shared_info)) linear skb, which > is an order-2 allocation. Now with paged skb, first we do an order-1 > allocation to hold the packet from device, then skb_linearize (if > swcrypto is used) the skb. Note, in most of the time, the skb->len will > be far less than 8K (unless 11n aggregation is used). So normally > skb_linearize only does an order-1 (or even order-0) allocation in most. > So in the swcrypto case, the paged Rx patch changes the memory > allocation from one order-2 into two separated order-1 allocations. It > should still be an improvement. No? Ah, ok. So only additional cost with "paged Rx" and swcrypto is a memcpy, which is theoretically rather small cost compared with doing tx/rx cryptography in main cpu. So, what about turn on swcrypto by default upstream? Stanislaw _______________________________________________ kernel mailing list kernel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/kernel