[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Xen-devel] Resetting network device / skb leak
- To: Xen list <xen-devel@xxxxxxxxxxxxxxxxxxxxx>
- From: Jacob Gorm Hansen <jacob@xxxxxxxx>
- Date: Wed, 21 Apr 2004 19:38:47 +0200
- Delivery-date: Wed, 21 Apr 2004 18:39:15 +0100
- List-id: List for Xen developers <xen-devel.lists.sourceforge.net>
hi,
I seem to have a problem with the Linux xen-network driver leaking skbs.
This is probably my own fault, upon resumption after migration I call
this:
void network_resume(void)
{
struct net_device* dev = __dev_get_by_name("eth0");
MOD_DEC_USE_COUNT;
network_open(dev);
}
-- which works fine. However, in network_open() the call to
NETOP_RESET_RINGS seems to clear all the pointers to the old skbs, and
network_alloc_rx_buffers() allocs a bunch of new ones. It suppose that
means I have just leaked a whole bunch of skbs. I know the standard
suspend/resume code performs almost a full ifup/ifdown (which I cannot
do in my case) but I don't see any skb-freeing code in that case either?
I have tried dev_kfree_skb()'ing the contents of the np->rx_skbs[1:]
array before calling network_open, but doing so just crashes Linux :-(
Any ideas?
Jacob
-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel