Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Nov 2002 13:38:17 +0200
From:      Ruslan Ermilov <ru@FreeBSD.org>
To:        co9@xs4all.nl
Cc:        Peter Wemm <peter@FreeBSD.org>, stable@FreeBSD.org, bug-followup@FreeBSD.org
Subject:   Re: gnu/44564 (was: Re: CVS pserver in FreeBSD 4.7-STABLE)
Message-ID:  <20021106113817.GA8836@sunbay.com>
In-Reply-To: <22027.213.201.148.147.1036580392.squirrel@webmail.xs4all.nl>
References:  <list.freebsd.stable#144738949613.20021028171819@norma.perm.ru> <list.freebsd.stable#20021105140656.GA88730@sunbay.com> <3DC84592.10201@xs4all.nl> <20021106090521.GA93420@sunbay.com> <22027.213.201.148.147.1036580392.squirrel@webmail.xs4all.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Nov 06, 2002 at 11:59:52AM +0100, co9@xs4all.nl wrote:
> > On Tue, Nov 05, 2002 at 11:26:26PM +0100, Robin Schilham wrote:
> >> Ruslan Ermilov wrote:
> >> >--9amGYk9869ThD9tj
> >> >Content-Type: text/plain; charset=us-ascii
> >> >Content-Disposition: inline
> >> >Content-Transfer-Encoding: quoted-printable
> >> >
> >> >On Mon, Oct 28, 2002 at 01:00:52PM -0800, Kris Kennaway wrote:
> >> >
> >> >>On Mon, Oct 28, 2002 at 05:18:19PM +0500, Eugene M. Zheganin wrote:
> >> >>
> >> >>>Hi, all.
> >> >>>=20
> >> >>>Ater installing FreeBSD 4.7-STABLE from cvsup I niticed the follwing
> >> >>>problem: there is an CVS-repository on one of my FreeBSD boxes, and
> >> >>>during it's work from time to time some cvs procecces appear; they do
> >> >>>nothing, but their summary CPU load is enough high:
> >> >>>=20
> >> >>> PID USERNAME      PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU
> >> C=
> >> >>
> >> >OMMAND
> >> >
> >> >>>4958 hunter         64   0 67144K   648K RUN      7:34 15.58% 15.58%
> >> c=
> >> >>
> >> >vs
> >> >
> >> >>>4939 alex           64   0 67144K   568K RUN      7:57 15.28% 15.28%
> >> c=
> >> >>
> >> >vs
> >> >
> >> >>>4960 hunter         64   0 67144K 10348K RUN      7:34 14.21% 14.21%
> >> c=
> >> >>
> >> >vs
> >> >
> >> >>>4971 hunter         64   0 67144K 66400K RUN      7:34 14.11% 14.11%
> >> c=
> >> >>
> >> >vs
> >> >
> >> >>>4919 alex           64   0 67144K   568K RUN      7:44 13.23% 13.23%
> >> c=
> >> >>
> >> >vs
> >> >
> >> >>=20
> >> >>I think this is a known bug in CVS: I'm CC'ing Peter on the reply
> >> >>because he'll know more.
> >> >>=20
> >> >
> >> >I'm seeing this two, after upgrading our 4.5-STABLE box to 4.7-STABLE
> >> last
> >> >Saturday.  For example:
> >> >
> >> >  PID USERNAME      PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU
> >> >  COMMA=
> >> >ND
> >> >65743 cvh            55   0 67316K 66768K RUN    220:23 85.84% 85.84%
> >> cvs
> >> >
> >> >
> >> >>>There is at list one zombie process among them:
> >> >>>=20
> >> >>># ps -ax | grep cvs
> >> >>>4919  ??  Rs     7:50,15 cvs --allow-root=3D/usr/local/public/cvs
> >> pser=
> >> >>
> >> >ver
> >> >
> >> >>>4939  ??  Rs     8:02,97 cvs --allow-root=3D/usr/local/public/cvs
> >> pser=
> >> >>
> >> >ver
> >> >
> >> >>>4958  ??  Rs     7:40,10 cvs --allow-root=3D/usr/local/public/cvs
> >> pser=
> >> >>
> >> >ver
> >> >
> >> >>>4960  ??  Rs     7:39,88 cvs --allow-root=3D/usr/local/public/cvs
> >> pser=
> >> >>
> >> >ver
> >> >
> >> >>>4961  ??  Z      0:00,00  (cvs)
> >> >>>4971  ??  Rs     7:39,87 cvs --allow-root=3D/usr/local/public/cvs
> >> pser=
> >> >>
> >> >ver
> >> >
> >> >>>97058  p1  S+     0:00,02 /bin/csh -c ps -ax | grep cvs
> >> >>>97205  p1  S+     0:00,00 grep cvs
> >> >>>=20
> >> >>>and I think the problem is in that zombie.
> >> >>>=20
> >> >>>I can kill these procecces only by "killall -9 cvs".
> >> >>>=20
> >> >>>When I type "kill -9 <zombie PID>" can't kill it.
> >> >>>=20
> >> >>>I use CVS-repository with password auth, all binaries are from the
> >> >>>base system; I launch cvs from inetd.conf with string
> >> >>>=20
> >> >>>cvspserver      stream  tcp     nowait  root    /usr/bin/cvs    cvs
> >> --a=
> >> >>
> >> >llow-root=3D/usr/local/public/cvs pserver
> >> >
> >> >>>=20
> >> >>>may be I should change some of its flags ?
> >> >>>=20
> >> >>>WBR Eugene.
> >> >>
> >> >
> >>
> >> See http://www.freebsd.org/cgi/query-pr.cgi?pr=gnu/44564
> >>
> > I see this has already been fixed in the CVS repo:
> >
> > RCS file: /cvs/ccvs/src/server.c,v
> > Working file: server.c
> > head: 1.281
> > branch:
> > locks: strict
> > access list:
> > keyword substitution: kv
> > total revisions: 294;	selected revisions: 1
> > description:
> > ----------------------------
> > revision 1.280
> > date: 2002/10/04 19:56:01;  author: scjones;  state: Exp;  lines: +13 -23
> > * client.c (get_responses_and_close, connect_to_pserver): Set
> > to_server and from_server to NULL after freeing.
> > * main.c (main): Clear server_active when finished.  Also neaten
> > up the SERVER_SUPPORT ifdef's.
> > * server.c (do_cvs_command): Set protocol_inbuf, stderrbuf, and
> > stdoutbuf to NULL after freeing.
> > (server_cleanup): Free buf_from_net and buf_to_set and set to NULL.
> > Also reset error_use_protocol.
> > (server): Don't SIG_register server_cleanup.  main_cleanup (which
> > is already registered) outputs a fatal error which causes it to
> > be called; registering it directly results in it being called twice.
> > (cvs_output): Don't try to use buf_to_net or protocol if they're NULL.
> > =============================================================================
> >
> > So, the minimalistic patch (before -p1 is released) would look like this:
> >
> 
> Uhm, minimalistic? My two patches changed only two lines of code...
> ;-)
> 
Yes, it *is* minimalistic.  -19 is smaller than +2.


Cheers,
-- 
Ruslan Ermilov		Sysadmin and DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

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?20021106113817.GA8836>