Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 14 Jul 2005 15:10:43 +0400
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Peter Holm <peter@holm.cc>, sam@FreeBSD.org, maxim@FreeBSD.org
Cc:        current@FreeBSD.org
Subject:   http://www.holm.cc/stress/log/cons141.html
Message-ID:  <20050714111043.GA17494@cell.sick.ru>
In-Reply-To: <20328.193.162.192.11.1121244715.squirrel@webmail2.pair.com>
References:  <20050713083756.GA3728@cell.sick.ru> <20328.193.162.192.11.1121244715.squirrel@webmail2.pair.com>

next in thread | previous in thread | raw e-mail | index | archive | help
  Colleagues,

On Wed, Jul 13, 2005 at 10:51:55AM +0200, Peter Holm wrote:
P> > how often the panic in subject fires? I guess it is related to the problem
P> > discussed in this thread [1], and may be even the patch I've posted there
P> > will help.
P> >
P> 
P> The panic is almost instantanious if I run the stress test while doing
P> an "arp -d xxx".

The attached WIP patch helps me. The [1] script can't drop my box to panic
anymore, when running in 15 instances on 4-x CPU box.

The idea of the patch is to hold rtentry lock during all the manipulation
of the rtentry itself and its llinfo. To achieve this, I've changed 
rt_check() and arplookup() to return a locked rtentry.

Not everything is OK, yet. For example when I turn witness off via sysctl,
and all the scripts are running at this moment, I get a panic in
route_output() - "sleeping thread owns not-sleepable lock".

[1] ( while (true); do
	arp -d 81.19.64.111  >/dev/null 2>&1;
	ping -c 1 -t 1 81.19.64.111 >/dev/null 2>&1;
      done) &

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



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