I am writing a device driver for a modem. I can successfully continuously ping to my modem for 8 to 10 minutes. After that, I can no longer ping to it, but I can ping from it. I have determined that at that point I am still receiving the ping packets and sending them to the kernel, just as I had when the pings were successful, but I am no longer receiving ping packets from the kernel to transmit back.
Once it gets into this state, I have noticed that the "arp" and "route" commands take an extra long time to complete. Other commands are not slowed down. The "top" command does not show any extraordinary memory usage by any process. I am running Linux 2.6.10 on a PowerPC processor. Any suggestions as to what may be going on?