DragonFly bugs List (threaded) for 2007-05
DragonFly BSD
DragonFly bugs List (threaded) for 2007-05
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: kernel panic


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Sun, 13 May 2007 00:34:35 -0700 (PDT)

:This is a laptop that has been power cycled at least a hundred times
:since that took place so it seems to me there's no way it was coming
:from memory.  When my re(4) troubles were happening I had hw.physmem
:set to 256M to get manageable coredumps.  After my troubles were
:resolved I removed that entry from my loader.conf.  So this time my
:dump consisted of 1.5GB as did several re(4) related coredumps prior
:to my setting hw.physmem.  I assume that the swap space isn't zero'd
:or otherwise initialized prior to a page being written to it.  I also
:assume that a coredump is written sparsely to disk so old data could
:remain across coredumps.  I guess I'll read the code and see if I can
:learn a bit more rather than making assumptions.
:
:Joe

    It may be worth adding a DELAY in re_stop(), but it will take a
    while to determine whether it does any good if we can't reproduce
    the failure consistently.


					-Matt
					Matthew Dillon 
					<dillon@backplane.com>

Index: if_re.c
===================================================================
RCS file: /cvs/src/sys/dev/netif/re/if_re.c,v
retrieving revision 1.32
diff -u -r1.32 if_re.c
--- if_re.c	30 Mar 2007 14:15:58 -0000	1.32
+++ if_re.c	13 May 2007 07:33:22 -0000
@@ -2320,6 +2320,7 @@
 	CSR_WRITE_1(sc, RE_COMMAND, 0x00);
 	CSR_WRITE_2(sc, RE_IMR, 0x0000);
 	CSR_WRITE_2(sc, RE_ISR, 0xFFFF);
+	DELAY(1000);
 
 	if (sc->re_head != NULL) {
 		m_freem(sc->re_head);



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]