From owner-freebsd-hackers@FreeBSD.ORG Wed Jun 25 02:50:23 2003 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0DD6F37B401 for ; Wed, 25 Jun 2003 02:50:23 -0700 (PDT) Received: from bluejay.mail.pas.earthlink.net (bluejay.mail.pas.earthlink.net [207.217.120.218]) by mx1.FreeBSD.org (Postfix) with ESMTP id 90E9244003 for ; Wed, 25 Jun 2003 02:50:22 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from user-38lc0fm.dialup.mindspring.com ([209.86.1.246] helo=mindspring.com) by bluejay.mail.pas.earthlink.net with asmtp (SSLv3:RC4-MD5:128) (Exim 3.33 #1) id 19V6ut-0003JF-00; Wed, 25 Jun 2003 02:50:16 -0700 Message-ID: <3EF96FFF.84BF6C1C@mindspring.com> Date: Wed, 25 Jun 2003 02:48:47 -0700 From: Terry Lambert X-Mailer: Mozilla 4.79 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Varshavchick Alexander References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-ELNK-Trace: b1a02af9316fbb217a47c185c03b154d40683398e744b8a4bc98cbb45cf0de143fbb678618f62e2e666fa475841a1c7a350badd9bab72f9c350badd9bab72f9c cc: freebsd-hackers@FreeBSD.ORG Subject: Re: How to delete unix socket entries X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 25 Jun 2003 09:50:23 -0000 Varshavchick Alexander wrote: > On Wed, 25 Jun 2003, Terry Lambert wrote: > > > whole lot (about 2000!) of entries like these: > > [ ... ] > > > How can I get rid of these extra ones? > > > > kill -9 the process that has them open; if it's important, restart > > it after fixing whatever is causing it to go insane. > > The problem is that the process which opened them was already killed long > time ago, these entries resembles zombi because they seem to exist > by themselves, not connected with any file or process. Sockets have to be explicitly closed. They are generally closed automatically by exit(), which will close all the fd's a process has open. I agree with the previous poster, that it looks like a bug you will need to fix or workaround. It looks like what's happened is that you have a deadly embrace deadlock, where you've sent data both ways and then exited. One thing to try might be to either turn off keepalive via sysctl, or explicitly disable keepalive on the sockets, first thing after opening them. -- Terry