From owner-freebsd-net Wed Dec 13 13: 7: 3 2000 From owner-freebsd-net@FreeBSD.ORG Wed Dec 13 13:06:59 2000 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from earth.backplane.com (placeholder-dcat-1076843399.broadbandoffice.net [64.47.83.135]) by hub.freebsd.org (Postfix) with ESMTP id ABD8A37B699; Wed, 13 Dec 2000 13:06:59 -0800 (PST) Received: (from dillon@localhost) by earth.backplane.com (8.11.1/8.9.3) id eBDL6Sg86570; Wed, 13 Dec 2000 13:06:28 -0800 (PST) (envelope-from dillon) Date: Wed, 13 Dec 2000 13:06:28 -0800 (PST) From: Matt Dillon Message-Id: <200012132106.eBDL6Sg86570@earth.backplane.com> To: Kirk McKusick Cc: Alfred Perlstein , arch@FreeBSD.ORG, net@FreeBSD.ORG Subject: Re: patch to cleanup inflight desciptor handling. References: <200012131852.KAA17423@beastie.mckusick.com> Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org :I believe that your changes have been sorely needed for many :years. While I would like to see regular mbufs given a callback :mechanism, your present approach of using an mbuf cluster :solves 90% of the problem. : : Kirk McKusick ... Aflred, be careful that you don't break things we only just fixed last year. The descriptor passing code has been broken for many years. I think the reason we have to scan the descriptor list is related to locating isolated self-referential 'loops' with descriptor passing and unix domain sockets and closing them. e.g. when you pass a descriptor for a unix-domain socket through a unix-domain socket, it is possible for the socket descriptors to reference each other and thus never have their ref count drop to 0 even when all associated processes have close()'d. This happens all the time. Be sure you don't break the fix that solves that particular problem. -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message