Stefan Roese wrote: > Dave, > > On Saturday 15 March 2008, Dave Littell wrote: >> I've seen an issue with my 1.3.1-based port of U-Boot where a relatively >> large number of pings issued from the command line will ultimately fail >> with the message: >> >> Cannot allocate private hw data for eth_device... >> >> I looked around this message and it seems that ppc_4xx_eth_initialize() >> malloc()’s a EMAC_4XX_HW_PST structure and assigns it to dev->priv. >> However, nothing ever frees this buffer so standing on a ping will >> ultimately pull down all the available memory. > > Hmmm. IIRC ppc_4xx_eth_initialize() is only called once upon bootup for > ethernet driver initialization. The function called each time before network > action is ppc_4xx_eth_init(). >
It looks like ppc_4xx_eth_initialize() is called from eth_init() and ppc_4xx_eth_init() is only called if there's an emac0_dev. Hm? >> One fix might be to free( dev->priv ) at the end of ppc_4xx_eth_halt(). >> I tried this today and noted no ill effects. > > So did it work for you? > It seems to be working well. Thanks, Dave ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ U-Boot-Users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/u-boot-users
