From owner-freebsd-current Thu Aug 27 00:24:59 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id AAA25127 for freebsd-current-outgoing; Thu, 27 Aug 1998 00:24:59 -0700 (PDT) (envelope-from owner-freebsd-current@FreeBSD.ORG) Received: from burka.carrier.kiev.ua (burka.carrier.kiev.ua [193.193.193.107]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id AAA25119 for ; Thu, 27 Aug 1998 00:24:51 -0700 (PDT) (envelope-from archer@grape.carrier.kiev.ua) Received: from kozlik.carrier.kiev.ua (kozlik.carrier.kiev.ua [193.193.193.111]) by burka.carrier.kiev.ua (8.9.0/8.Who.Cares) with ESMTP id KAA05452; Thu, 27 Aug 1998 10:23:56 +0300 (EEST) Received: (from uucp@localhost) by kozlik.carrier.kiev.ua (8.9.0/8.9.0/8.Who.Cares) with UUCP id KAA27691; Thu, 27 Aug 1998 10:22:18 +0300 (EEST) Received: (from archer@localhost) by grape.carrier.kiev.ua (8.9.1/8.8.8) id KAA02669; Thu, 27 Aug 1998 10:14:19 +0300 (EEST) (envelope-from archer) Date: Thu, 27 Aug 1998 10:14:19 +0300 (EEST) From: Alexander Litvin Message-Id: <199808270714.KAA02669@grape.carrier.kiev.ua> To: Garrett Wollman Cc: current@FreeBSD.ORG Subject: Re: encountered possible VM bug ? X-Newsgroups: grape.freebsd.current In-Reply-To: <19980824111923.A207@compufit.at> <19980824115816.A15512@mars.hsc.fr> <199808241413.KAA26862@khavrinen.lcs.mit.edu> Organization: Lucky Grape User-Agent: tin/pre-1.4-980202 (UNIX) (FreeBSD/3.0-CURRENT (i386)) Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG In article <199808241413.KAA26862@khavrinen.lcs.mit.edu> you wrote: GW> < said: >> Under out of memory conditions, inetd tends to fall in a weird >> state. Apparently this is an interaction between the malloc library >> and inetd, but nobody has managed yet to find out exactly what >> happens. Maybe error checking is lacking somewhere. GW> No, this is the ``daemons dying'' bug which nobody has fixed yet. GW> When the system runs out of swap, some random selection of processes GW> which are in swap get corrupted. Usually this results in a daemon GW> which dies whenever it fork()s, but sometimes it is manifested as GW> other sorts of corruption. The message you see from realloc is GW> indicative of a corrupted pointer. Really, I was under impression, that it is the problem just with fork(). But now I may confirm that processes get corrupted in different manners. E.g., I have now a specially written dummy daemon running, which I was able to corrupt (intentionally exhausting swap) in such a way that it successfully forks. Than child process sleeps (just to give me chance to attach to it with debugger), allocates memory, accesses it -- and during all that it doesn't get SIGSEGV. But then it dies when trying to syslog(3). It seems that the corruption is in mmaped ld.so or libc.3.1.so. If anybody cares, I may try to give any other details. GW> -GAWollman SY, Alexander Litvin, Lucky Net ltd. --- According to Kentucky state law, every person must take a bath at least once a year. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message