NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-sparc64/46260: gem0 driver fails to recover after RX overflow
The following reply was made to PR port-sparc64/46260; it has been noted by
GNATS.
From: Havard Eidnes <he%NetBSD.org@localhost>
To: gnats-bugs%NetBSD.org@localhost, jdc%coris.org.uk@localhost
Cc: port-sparc64-maintainer%netbsd.org@localhost
Subject: Re: port-sparc64/46260: gem0 driver fails to recover after RX
overflow
Date: Tue, 10 Apr 2012 15:30:48 +0200 (CEST)
> Revision 1.68 (which was pulled up to netbsd-4, but not netbsd-4-0) changed
> the:
>
> gem_init(ifp);
>
> to:
>
> gem_reset_rxdma(sc);
>
> when (rxstat & GEM_MAC_RX_OVERFLOW) occurred. Can you try changing this
> back?
Hm, did that, and ... apparently I can't do that from interrupt
context, as it hit a diagnostic assertion (this is with netbsd-6
sources this time, BTW):
gem0: receive error: RX overflow
panic: kernel diagnostic assertion "!cpu_intr_p()" failed: file
"/usr/src/sys/kern/kern_timeout.c", line 471
cpu0: Begin traceback...
cpu0: End traceback...
Frame pointer is at 0xe0016fd1
Call traceback:
netbsd:cpu_reboot+0x268(1cb4210, 5db1c00, ff0f0000000001, 0, 1, 75) fp =
e0017091
netbsd:vpanic+0x20c(104, 0, ffffffffff000000, 1, 146e0c0, 0) fp = e0017141
netbsd:kern_assert+0x34(17928f0, e0017b38, e0017970, fefefefefefefeff,
10cb9a0, ff000000000000) fp = e00171f1
netbsd:callout_halt+0x194(17928f0, 1792928, 179b7f0, 17ce890, 1d7, 73) fp =
e00172b1
netbsd:gem_stop+0xc(6d5e440, 0, 1000000, 0, e0017d50, 0) fp = e0017361
netbsd:gem_init+0x28(6d5e008, 0, e0017d50, 800, 1d, e) fp = e0017411
netbsd:gem_intr+0x17c(6d5e008, 17adce0, 7fff0000, 24, 4000000000000000, 1d)
fp = e00174c1
netbsd:intr_biglock_wrapper+0x10(6d5e000, 0, 885671dc, 88567170, 0, 0) fp =
e0017571
netbsd:sparc_interrupt+0x224(5db7390, 0, e0017ed0, 1, 122ca40, 2014000) fp =
e0017621
netbsd:sched_nextlwp+0x124(1792800, 0, 0, 6, 0, 2014000) fp = 877c3401
Then how should we go about doing this?
Regards,
- Havard
Home |
Main Index |
Thread Index |
Old Index