From owner-freebsd-stable@FreeBSD.ORG Mon Nov 6 14:34:39 2006 Return-Path: X-Original-To: freebsd-stable@freebsd.org Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3E8F516A5F9 for ; Mon, 6 Nov 2006 14:34:39 +0000 (UTC) (envelope-from brooks@lor.one-eyed-alien.net) Received: from sccmmhc91.asp.att.net (sccmmhc91.asp.att.net [204.127.203.211]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5E40743D86 for ; Mon, 6 Nov 2006 14:34:37 +0000 (GMT) (envelope-from brooks@lor.one-eyed-alien.net) Received: from lor.one-eyed-alien.net ([12.207.12.9]) by sccmmhc91.asp.att.net (sccmmhc91) with ESMTP id <20061106143431m9100ellnqe>; Mon, 6 Nov 2006 14:34:36 +0000 Received: from lor.one-eyed-alien.net (localhost [127.0.0.1]) by lor.one-eyed-alien.net (8.13.8/8.13.8) with ESMTP id kA6EYTmN034849; Mon, 6 Nov 2006 08:34:29 -0600 (CST) (envelope-from brooks@lor.one-eyed-alien.net) Received: (from brooks@localhost) by lor.one-eyed-alien.net (8.13.8/8.13.8/Submit) id kA6EYSZm034848; Mon, 6 Nov 2006 08:34:28 -0600 (CST) (envelope-from brooks) Date: Mon, 6 Nov 2006 08:34:27 -0600 From: Brooks Davis To: spil.oss@gmail.com Message-ID: <20061106143427.GA34760@lor.one-eyed-alien.net> References: <82912730-AD0E-4AE0-AA7C-FDD321F00B57@gmail.com> <5fbf03c20611051212q28a819cbhf7e49d56c4ff6b3e@mail.gmail.com> <20061105203834.GA22060@lor.one-eyed-alien.net> <5fbf03c20611060520s473b54d1v8577cac647078fee@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="UugvWAfsgieZRqgk" Content-Disposition: inline In-Reply-To: <5fbf03c20611060520s473b54d1v8577cac647078fee@mail.gmail.com> User-Agent: Mutt/1.5.11 Cc: freebsd-stable@freebsd.org Subject: Re: dhclient taking up all CPU X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Nov 2006 14:34:39 -0000 --UugvWAfsgieZRqgk Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable It doesn't effect nearly enough people to warrent a commit to the eratta branch. It's also not serious enough; the bar has typically been set at the level of data corruption bugs. -- Brooks On Mon, Nov 06, 2006 at 02:20:42PM +0100, Spil Oss wrote: > Hi all, >=20 > Rebuilt dhclient with the bpf.c from RELENG_6 ( line 285 =3D=3D -> >=3D) > According to the cvs commit log this fixes my problem. >=20 > Still leaves me wondering why this was not applied to RELENG_6_1 >=20 > Kind regards, >=20 > Spil. >=20 >=20 > On 05/11/06, Brooks Davis wrote: > >It should be fixed in STABLE. The particular fixes were to bpf.c so I > >belive (but have not verified) that if you grab the latest version of > >that file, put it in src/sbin/dhclient/ and rebuild dhclient the > >problems will go away. > > > >-- Brooks > > > >On Sun, Nov 05, 2006 at 09:12:25PM +0100, Spil Oss wrote: > >> Hi all, > >> > >> Been experiencing this same behaviour every now-and-then. > >> > >> FreeBSD/i386 6.1-RELEASE-p10 > >> > >> Any solutions to this? > >> > >> Kind regards, > >> > >> Spil. > >> > >> On 06/05/06, Lodewijk V??ge wrote: > >> >hello, > >> > > >> >a while ago someone reported the same problem I had been seeing, that > >> >dhclient starts taking up 100% CPU. it's probably something comcast > >> >is doing. > >> > > >> >I couldn't get the requested coredump then, if I set kern.corefile > >> >to /tmp/%N.core and kill -QUIT it, it doesn't seem to produce a > >> >coredump. but it happened again just now, and I was able to attach > >> >gdb. this is where it's spinning, in receive_packet() in bpf.c: > >> > > >> >(gdb) > >> >285 if (interface->rbuf_offset =3D=3D interface- > >> > >rbuf_len) { > >> >(gdb) > >> >299 if (interface->rbuf_len - interface- > >> > >rbuf_offset < > >> >(gdb) > >> >306 memcpy(&hdr, &interface->rbuf[interface- > >> > >rbuf_offset], > >> >(gdb) > >> >313 if (interface->rbuf_offset + hdr.bh_hdrlen + > >> >hdr.bh_caplen > > >> >(gdb) > >> >320 interface->rbuf_offset +=3D hdr.bh_hdrlen; > >> >(gdb) > >> >327 if (hdr.bh_caplen !=3D hdr.bh_datalen) { > >> >(gdb) > >> >328 interface->rbuf_offset =3D > >> >(gdb) > >> >331 continue; > >> >(gdb) > >> >385 } while (!length); > >> > > >> >and then it goes back to line 285. interesting variables are: > >> > > >> >(gdb) p *interface > >> >$1 =3D {next =3D 0x0, hw_address =3D {htype =3D 1 '\001', hlen =3D 6 = '\006', > >> > haddr =3D "\000\021??\223?\000\000\000\000\000\000\000\000\000"}, > >> >primary_address =3D {s_addr =3D 0}, > >> > name =3D "vr0", '\0' , rfdesc =3D 7, wfdesc =3D 7, > >> >rbuf =3D 0x807d000 "\022?\\Dk\214", rbuf_max =3D 4096, > >> > rbuf_offset =3D 416, rbuf_len =3D 415, ifp =3D 0x806f160, client =3D > >> >0x8075000, noifmedia =3D 0, errors =3D 0, dead =3D 0, index =3D 2} > >> >(gdb) p length > >> >$2 =3D 0 > >> >(gdb) p hdr > >> >$3 =3D {bh_tstamp =3D {tv_sec =3D 0, tv_usec =3D 0}, bh_caplen =3D 42= 94901760, > >> >bh_datalen =3D 4294901778, bh_hdrlen =3D 65535} > >> > > >> >this is FreeBSD/i386 6.1-RC as of about two weeks ago. > >> > > >> >Lodewijk > >> > > >> >_______________________________________________ > >> >freebsd-stable@freebsd.org mailing list > >> >http://lists.freebsd.org/mailman/listinfo/freebsd-stable > >> >To unsubscribe, send any mail to=20 > >"freebsd-stable-unsubscribe@freebsd.org" > >> > > > > >> _______________________________________________ > >> freebsd-stable@freebsd.org mailing list > >> http://lists.freebsd.org/mailman/listinfo/freebsd-stable > >> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.o= rg" > > > > > > > > >=20 --UugvWAfsgieZRqgk Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (FreeBSD) iD8DBQFFT0fzXY6L6fI4GtQRAiWeAKDVxmGIsnfYG+w4D3NSA7+73HJZkgCgwmib jloC4LHi1YFtQFUje52CvQs= =kyII -----END PGP SIGNATURE----- --UugvWAfsgieZRqgk--