Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Aug 2005 09:23:17 -0700
From:      Brooks Davis <brooks@one-eyed-alien.net>
To:        Frank Jahnke <jahnke@fmjassoc.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: 6.0-Beta2: dhclient instability
Message-ID:  <20050812162317.GA13376@odin.ac.hmc.edu>
In-Reply-To: <1123776476.645.7.camel@localhost>
References:  <1123776476.645.7.camel@localhost>

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

--SUOF0GtieIMvvwua
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Aug 11, 2005 at 09:07:56AM -0700, Frank Jahnke wrote:
> I have a problem with dhclient becoming unstable. =20
>=20
> I'm running 6.0-beta2 and Gnome 2.10 on a dual Althon machine.  On boot,
> everything is fine.  After visiting a few web pages with Epiphany,
> dhclient goes from a minor process to one that consumes an entire CPU.
> The machine is still reasonably responsive, but needless to say, its
> capacity goes way down.
>=20
> It does not seem to be related to the web site visited, or the scheduler
> used (ULE or 4BSD).  Downloading mail repeatedly also does not trigger
> the problem.
>=20
> Any ideas?

I've been totally unsuccessful in repoducing this problem here so I need
some help to find the problem.  I really want to get this fixed, but I'm
working blind.  Please rebuild dhclient with debugging options and see
if you can get it to fail:

cd /usr/src/sbin/dhclient
make clean
make CFLAGS=3D-g STRIP=3D
make CFLAGS=3D-g STRIP=3D install

Once it'd failed, attached to it with the debugger:

gdb /sbin/dhclient <pid of CPU hoging dhclient>

Then obtain a stack trace with the "bt" command.  Continue execution
with "c" and then press Ctrl-C to stop execution and repeat.  You should
be able to find the function you are stuck in fairly.  It won't
necessicary be the one at the top to the stack trace, but it will
likely be near the top.  If you can find that, I'll have somewhere to
look further.

One other thing to try would be to install the following patch and see
if it fixes dhclient.  It's something OpenBSD is doing, but if it fixes
things, it's IMO a bug in bpf.

=3D=3D=3D=3D //depot/user/brooks/cleanup/sbin/dhclient/bpf.c#7 - /usr/home/=
brooks/working/freebsd/p4/cleanup/sbin/dhclient/bpf.c =3D=3D=3D=3D
@@ -288,7 +288,7 @@
 			if (length <=3D 0)
 				return (length);
 			interface->rbuf_offset =3D 0;
-			interface->rbuf_len =3D length;
+			interface->rbuf_len =3D BPF_WORDALIGN(length);
 		}
=20
 		/*

-- Brooks

--=20
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

--SUOF0GtieIMvvwua
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFC/Mz1XY6L6fI4GtQRAhokAJ0ZSV98nqMnzX9IGKPDAjb6psgGBQCg4JQX
i2BQIL5Q7Q917CGqHVJVKDw=
=xlCi
-----END PGP SIGNATURE-----

--SUOF0GtieIMvvwua--



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