I met the same problem in CPM driver, and there could be many solutions. I think the right place to fix is the fec driver. The fec driver registers interrupt handler during the initialization not when the device is opened, so it may receive packets even the device is not up and running (also before the network subsystem is initialized) My fix was to ignore the received packets if the driver is not opened.
--- linux-2.4.26.orig/arch/ppc/8xx_io/fec.c +++ linux-2.4.26/arch/ppc/8xx_io/fec.c @@ -587,6 +587,9 @@ goto rx_processing_done; } + if (!netif_running(dev)) + goto rx_processing_done; + /* Process the incoming frame. */ fep->stats.rx_packets++; Regards, Ho -----Original Message----- From: [EMAIL PROTECTED] [mailto:linuxppc-embedded-bounces at ozlabs.org] On Behalf Of Rune Torgersen Sent: Wednesday, January 12, 2005 7:32 AM To: Steffen Rumler; linuxppc Subject: RE: Kernel boot hangs by parallel flood pings --- Kernel.old/net/ipv4/ip_output.c Thu Jun 5 09:00:39 2003 +++ Kernel/net/ipv4/ip_output.c Thu Jun 5 09:00:28 2003 @@ -1087,11 +1087,11 @@ void __init ip_init(void) { - dev_add_pack(&ip_packet_type); - ip_rt_init(); inet_initpeers(); + dev_add_pack(&ip_packet_type); + #ifdef CONFIG_IP_MULTICAST proc_net_create("igmp", 0, ip_mc_procinfo); #endif >>