On Mon, 19 Mar 2007, Guennadi Liakhovetski wrote:

On Fri, 16 Mar 2007, David Miller wrote:

There is an SKB leak somewhere, and that leaked SKB has references to
a route, that's what that message usually means.

Do you have an idea how to debug this? I tried just replacing all (dev_)alloc_skb and (dev_)kfree_skb in net/irda and drivers/net/irda, and I get for each skb address more free than alloc calls...

I wrote a small hashing debugger - from __aloc_skb I store the new skb on a hash, from __kfree_skb I remove it from it. The first strange thing that occurred to me is that __kfree_skb is very often called on already freed skbs. Is it normal? It seems strange as trying to free memory that you no longer own can free a newly allocated object at that address.

As for the original problem, looks like the packets that get leaked are from af_irda.c::irda_sendmsg(). Any ideas where and when these skbs should be freed?

Thanks
Guennadi
---------------------------------
Guennadi Liakhovetski, Ph.D.
DSA Daten- und Systemtechnik GmbH
Pascalstr. 28
D-52076 Aachen
Germany
-
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to