[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Resetting network device / skb leak
> 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 The correct suspend behaviour is caused by executing dev->stop(). Why are you not able to run the existing ifdown/ifup code? It doesn't execute notifier lists so shouldn't affect routing tables or anything like that. -- Keir ------------------------------------------------------- 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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |