cvs commit: src/sys/dev/em if_em.c

Gleb Smirnoff glebius at FreeBSD.org
Wed Dec 28 00:49:28 PST 2005


  Warner,

On Tue, Dec 27, 2005 at 10:34:01PM -0700, M. Warner Losh wrote:
M> : This probably means that the PCI memory space isn't fully initialized 
M> : but an interrupt has been triggered.  If you then go and try to poke the 
M> : hardware, then you can hang the system.
M> 
M> Most of the other drivers explicitly turn off their interrupt handler
M> or mark their softc as 'suspended' until the resume code gets to run.
M> Those that mark the softc as suspended exit the ISR immediately w/o
M> touching the hardware.  The em driver doesn't seem to do either of
M> these things.

I have tried this, and it doesn't help. I was setting a flag in suspend
handler and clearing it in resume handler. em_intr() exited always if
the flag was on. Howerver, this didn't help - the strange interrupt
happend after the resume handler has been run.

P.S. Yesterday I also noticed same 0xffffffff check in if_re.c

-- 
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE


More information about the cvs-all mailing list