Intermittent system hangs on 7.2-RELEASE-p1

John Baldwin jhb at freebsd.org
Fri Sep 11 19:14:48 UTC 2009


On Friday 11 September 2009 1:35:00 pm Linda Messerschmidt wrote:
> On Fri, Sep 11, 2009 at 11:02 AM, John Baldwin <jhb at freebsd.org> wrote:
> > Try turning off KTR_LOCK for spin mutexes (just force LO_QUIET on in
> > mtx_init() if MTX_SPIN is set)
> 
> I have *no* idea what you just said. :)
> 
> Which is fine.  But more to the point, I have no idea how to do it. :)

Something like this:

Index: sys/kern/kern_mutex.c
===================================================================
--- sys/kern/kern_mutex.c       (.../mirror/FreeBSD/stable/7)   (revision 195943)
+++ sys/kern/kern_mutex.c       (.../stable/7)  (revision 195943)
@@ -747,6 +747,10 @@
        if (opts & MTX_NOPROFILE)
                flags |= LO_NOPROFILE;

+       /* XXX: Only log for regular mutexes. */
+       if (opts & MTX_SPIN)
+               flags |= LO_QUIET;
+
        /* Initialize mutex. */
        m->mtx_lock = MTX_UNOWNED;
        m->mtx_recurse = 0;

> > A more recently schedgraph.py might also
> > fix the bugs you were seeing with the idle threads looking too long (esp. at
> > the start and end of graphs).
> 
> We are already on RELENG_7 due to the KTR-enabling rebuild, so that'd
> be the version we're using unless, as Julian observed, it's been fixed
> in the past week or so.

Hmm.  It works well for me for doing traces.

-- 
John Baldwin


More information about the freebsd-hackers mailing list