Date: Thu, 2 Feb 2006 17:01:12 -0800 From: Jack Vogel <jfvogel@gmail.com> To: Julian Elischer <julian@elischer.org> Cc: Michal Mertl <mime@traveller.cz>, freebsd-current@freebsd.org Subject: Re: em(4) stops forwarding Message-ID: <2a41acea0602021701o20d66381t6c3979d7826d956a@mail.gmail.com> In-Reply-To: <43E256DD.1030504@elischer.org> References: <1138813174.1358.34.camel@genius.i.cz> <43E0FE09.50804@samsco.org> <1138875351.1807.12.camel@genius.i.cz> <43E203F9.9060307@samsco.org> <1138890130.9192.3.camel@genius.i.cz> <43E2184B.3040606@samsco.org> <43E256DD.1030504@elischer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2/2/06, Julian Elischer <julian@elischer.org> wrote: > > the big "workaround" that may save lives would be to have a "storm > detection" that detects that > an interrupt is not being reset, say, by noticing that the same > interrupt has fired 32 times without > ever giving the system a chance to even get out of the interrupt > handling layer, > and then on detection call the interrupt routine sof EVERY DRIVER that > is registerred > for interrupts. > > I have done similar to this on one of our machines where the redirected > interrupt is being sent > to the interrupt used by em4, when em0 gets delayed. > > My solution for this embedded hardware is to add a hack so that when em4 > gets an interrupt and there > isn't one, it goes and services all the other em devices as well. > (remember this is for a particular hardware config so I can use > non-general solutions).. > > Another way to achieve this would be to have a special driver that you > register on the 'target' > interrupt, that when run, calls the correct interrupt handlers :-) > you could have a kernel module that you compile up with the correct two > interrupts in it > and on loading it would do the trick.. I have a feeling that the real fix is something down in the bottom half of the kernel where interrupt routing is set up. I think something is wonky down there on some new chip sets, but I'm not sure without more research. Anyone else looking at that perhaps? Jack
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2a41acea0602021701o20d66381t6c3979d7826d956a>