Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Feb 2002 12:52:14 +0100
From:      Mark Santcroos <marks@ripe.net>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        freebsd-current@FreeBSD.ORG, Alfred Perlstein <bright@mu.org>
Subject:   Re: Ethernet tunnel device
Message-ID:  <20020220125214.A425@laptop.6bone.nl>
In-Reply-To: <3C6E2011.65DDAD2A@mindspring.com>; from tlambert2@mindspring.com on Sat, Feb 16, 2002 at 01:02:09AM -0800
References:  <20020211032336.A2135@kashmir.etowns.net> <20020211170131.A79104@laptop.6bone.nl> <20020212074327.A3466@laptop.6bone.nl> <20020213111358.A3235@kashmir.etowns.net> <20020213111937.A10146@Odin.AC.HMC.Edu> <3C6B0BFD.F27F040F@mindspring.com> <20020216004146.A57907@laptop.6bone.nl> <3C6DD38B.BF38EC80@mindspring.com> <20020215214430.A7255@Odin.AC.HMC.Edu> <3C6E2011.65DDAD2A@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--pWyiEgJYm5f9v55/
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Sat, Feb 16, 2002 at 01:02:09AM -0800, Terry Lambert wrote:
> Pretty clearly, if it happens, and the process is truly
> gone, then there is a resource track cleanup that's
> missing (perhaps it's a reference that results from the
> Linux mmap resource track cleanup not releasing it?).

It was indeed a linux_compat specific resource cleanup issue.

I managed to create a simple linux program that had the same problem. From 
there on it was easy...

The problem was created by Alfred's locking commit of Jan 13.
(No hard feelings, it helped me to understand the code alot better! ;) )

Can someone please commit the attached (trivial) patch?

Mark

ps. there might be more pieces of code like this maybe.

-- 
Mark Santcroos				RIPE Network Coordination Centre
http://www.ripe.net/home/mark/		New Projects Group/TTM

--pWyiEgJYm5f9v55/
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="linux_ioctl.c.patch"

--- linux_ioctl.c.orig	Wed Feb 20 12:34:46 2002
+++ linux_ioctl.c	Wed Feb 20 12:35:06 2002
@@ -2313,9 +2313,10 @@
 	TAILQ_FOREACH(he, &handlers, list) {
 		if (cmd >= he->low && cmd <= he->high) {
 			error = (*he->func)(td, args);
-			if (error != ENOIOCTL)
+			if (error != ENOIOCTL) {
 				fdrop(fp, td);
 				return (error);
+			}
 		}
 	}
 	fdrop(fp, td);

--pWyiEgJYm5f9v55/--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020220125214.A425>