Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Jan 2002 14:41:53 -0700
From:      Dan Peterson <danp@danp.net>
To:        Steve Watt <steve@Watt.COM>
Cc:        stable@freebsd.org
Subject:   Re: VXLOCK interlock avoided messages
Message-ID:  <20020108214153.GA62044@danp.net>
In-Reply-To: <200201082110.g08LAqJ97852@wattres.Watt.COM>
References:  <200201082110.g08LAqJ97852@wattres.Watt.COM>

next in thread | previous in thread | raw e-mail | index | archive | help
Steve Watt <steve@Watt.COM> wrote:
> I recently upgraded to a fresher stable (4.5-PRE, 2002-Jan-3 20:43PST),
> and just saw (in my security report) the following very interesting
> looking errors:
> Jan  8 03:36:10 wattres /kernel: VXLOCK interlock avoided
> Jan  8 03:36:10 wattres /kernel: VXLOCK interlock avoided in vn_lock

I'm also having these problems and have had them since I updated my SMP
-STABLE machine in November sometime. They seem to happen the most during
daily runs (AIDE (ports/security/aide) seems to trigger them the most) with
some random occurrences throughout the day. I recently informed
peter(@FreeBSD.org) of the problem still being around and he produced a
patch to drop to the debugger when these cases occur so I could get some
traces for him. I'm sure he and others would be interested in any traces you
could provide as well.

All relevant info for my case (including the diff Peter supplied) can be
found at:

http://glueless.net/freebsd/vxlock/

To make use of the diff, apply it, include DDB in your kernel config (you
can see it commented out in mine) and build a kernel. I did it like so:

make kernel KERNCONF=YAVIN INSTKERNNAME=kernel.vxlock

When you have some time near the console to work with the debugger, reboot
to this new kernel (press a key at the loader countdown and enter "unload
kernel", "load kernel.vxlock", and then "boot"). Hopefully you've either
found a way to trigger it or it will happen soon after you boot this kernel.
I booted my special kernel and did a manual AIDE run and it dropped to the
debugger in seconds. Once you get there, keep entering "trace" and "c"
(continue) to get a few traces at each breakpoint (vget() and vn_lock()).
Once you get some, either enter "c" again and hold down enter until whatever
you're doing finishes or enter "call boot(0)" to cleanly shut down the
machine so you can reboot to your normal kernel.

Once you get the traces saved somewhere, just post them or a URL to the list
(and possibly CC peter@FreeBSD.org).

-- 
Dan Peterson <danp@danp.net> http://danp.net

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020108214153.GA62044>