lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 03 May 2010 13:37:20 +0200 From: Stefan Agner <stefan@...er.ch> To: Lennert Buytenhek <buytenh@...tstofly.org> Cc: netdev@...r.kernel.org Subject: Re: ep93xx_eth stopps receiving packages Quoting Lennert Buytenhek <buytenh@...tstofly.org>: > On Mon, Apr 19, 2010 at 05:38:13PM +0200, Stefan Agner wrote: > >> I'm using Linux 2.6.32.9 on a technologic systems TS-7250 SBC board, with >> the ep93xx_eth driver for networking. On three identical, but independent >> systems I noted that the system is unreachable after a while. On a serial >> terminal I noted that only the TX counter counts onward, RX stays where it >> is, >> no matter if i try to ping from or to the system. Wireshark tells me exactly >> that too: I see helpless ARP requests which gets answered, but no ICMP. The >> system doesnt receive the ARP requests, and just sends another one. > > (So does the board or does it not respond to ARP requests for its IP?) The board does not responds to ARP requests for its IP... >> With a simple program which sends small packages in a fast pace I can >> reproduce the problem after several seconds (additional CPU load seem to >> provoke the problem even more). Remove and replug the network cable doesn't >> solve the problem, but ifup/down does. I don't see any messages in dmesg, >> memory is still available. > > Do you see interrupts increasing in /proc/interrupts when this happens? No, interrupt doesn't increase anymore when it happens... I debugged the problem myself inbetween, I just took not the time to format and send the patch, sorry! There is a bug when interrupts gets disabled for a longer period, each a frame arrives when one is just been processed. ep93xx_rx gets called twice then, and the second time marks to many buffers as relased. I corrected this error by releasing the correct number of buffers when ep93xx_poll ends... Patch follows! Stefan -- Stefan Agner ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists