Messages in this thread | | | Subject | Re: Allocation of sk_buffs in the kernel | From | Andi Kleen <> | Date | 23 Aug 2001 05:14:56 +0200 |
| |
"Jens Hoffrichter" <HOFFRICH@de.ibm.com> writes:
> I'm currently writing a kernel patch where it is essential to get known > when a sk_buff is allocated. Or better said I have to get known when a > sk_buff is effectively a new packet in the kernel-
I don't want to guess why you need that...
> > I currently identified 3 functions in the kernel where sk_buffs are > allocated: alloc_skb (of course), skb_linearize and pskb_expand_head. Or at > least there new data is defined for the sk_buffs. > > Now I monitor a TCP session, a FTP download better said, and on the > interface arrives around 30000 packets for 50 MB of data. But in my kernel > patch only 2000 packets are allocated, or at least I see only the > allocation of 2000 packets. > > Can anyone help me where I can find my missing packets? ;)) I need them > badly! *GG*
There should be no skbuff allocation outside net/core/skbuff.c and all normal[1] networking drivers also don't use private pools. Perhaps you forgot to instrument a case there.
-Andi
[1] There may be a few unnormal ones that do; e.g. vendor driver writers seem to frequently try to reuse skbuffs privately because they're used to that from other OS. It is discouraged and somewhat tricky, but possible.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |