Le vendredi 07 janvier 2011 à 14:20 -0800, Ben Greear a écrit :
> On 0
> > Using skb_copy() is wrong then, since it makes a copy (order-1
> > allocations)
> >
> > It should use :
> >   skb_alloc( actual_size_of_frame  not the 3840 thing ...)
> >   copy(data)
> 
> We need the extra stuff copied too I think (like skb->cb).
> 
> If you could provide a bit more complete example code, I'll be happy
> to test it...

take a random drivers/net using copybreak ... say ... tg3.c

lines 4785

len = length_of_the_current_frame
copy_skb = netdev_alloc_skb(...,  len); 
// allocates exact required size not a byte more....
...
skb_copy_from_linear_data(skb, copy_skb->data, len);
...
skb_put(skb, len);
...






_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to