Bug 3156
Summary: | (net de2104x) Kernel panic with de2104x tulip driver on boot | ||
---|---|---|---|
Product: | Drivers | Reporter: | Spauldo da Hippie (spauldo) |
Component: | Network | Assignee: | Grant Grundler (grundler) |
Status: | CLOSED CODE_FIX | ||
Severity: | high | CC: | grundler, kyle, protasnb |
Priority: | P2 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 2.6.7 stock kernel | Subsystem: | |
Regression: | --- | Bisected commit-id: |
Description
Spauldo da Hippie
2004-08-04 12:44:28 UTC
Sorry, note that when I say "stock kernel", I mean stock linus kernel, not debian kernel. Compiled with gcc 3.3. Spauldo, since it's been a while can we refresh the status. How is it working with recent kernels? Thanks. This bug is missing a stack trace. Don't know if that kernel can't provide one or the BUG() just prints the message and no stack trace but continues running. But looking at 2.6.7 tree, a least one bug is obvious to me: "eth1: timeout expired stopping DMA" message is from de_stop_rxtx(). de_stop_rxtx() is supposed to wait until MAC TX/RX engines have gone to a "stopped" state. This can take up to 1200us at 10BT link rate. The "work" loop has no udelay() and is only testing 1000 times. Given each MMIO read is 1 microsecond about, that means code is only waiting about 1000us total AND disrupting the DMA stream while polling. I can fix that in the current code with this: http://iou.parisc-linux.org/~grundler/diff/diff-2.6.23-de2104x_stop_rxtx-01 The next message, "BUG in 919" is just a result of the TX/RX still running. This could happen during shutdown as well if "large" (more than 1K bytes) TX frames are in flight. Ie can be a problem in cases other than "No Link". Since reporter is not showing up, it's up to you Grant to decide whether to close the bug and to submit the patch. Part of the "problem" was fixed here: http://www.mail-archive.com/netdev@vger.kernel.org/msg62633.html (replace BUG_ON with printk warning). I'll submit the diff-2.6.23-de2104x_stop_rxtx-01 patch today. (Comment #3) Once it's accepted I'll close the bug. thanks for the reminder, grant |