From owner-freebsd-current@FreeBSD.ORG Sun Mar 6 02:48:19 2005 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9BA2516A4CE; Sun, 6 Mar 2005 02:48:19 +0000 (GMT) Received: from bloodwood.hunterlink.net.au (smtp-local.hunterlink.net.au [203.12.144.17]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5983E43D48; Sun, 6 Mar 2005 02:48:16 +0000 (GMT) (envelope-from boris@brooknet.com.au) Received: from ppp2DA6.dyn.pacific.net.au (ppp2DA6.dyn.pacific.net.au [61.8.45.166])j262mCHU005145; Sun, 6 Mar 2005 13:48:13 +1100 From: Sam Lawrance To: David Xu In-Reply-To: <422A6046.5080801@freebsd.org> References: <20050306012146.701FB17D8@localhost> <422A6046.5080801@freebsd.org> Content-Type: text/plain Date: Sun, 06 Mar 2005 13:49:29 +1100 Message-Id: <1110077369.790.48.camel@dirk.no.domain> Mime-Version: 1.0 X-Mailer: Evolution 2.0.1FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit cc: current@freebsd.org Subject: Re: Swapped out procs not brought in immediately after child exits X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Mar 2005 02:48:19 -0000 On Sun, 2005-03-06 at 09:43 +0800, David Xu wrote: > Sam Lawrance wrote: > > >>How-To-Repeat: > >> > >> > > > >Run a shell somewhere (first). Su or run another shell or similar (second). > >Wait until the first shell has swapped out (might require running some other > >memory hogs). Exit the second shell. Notice that the second shell takes a > >long time to exit. > > > > > > > This reminds me that it is another swappable kernel stack problem, if we > don't have > it, we even needn't TDP_WAKEPROC0 hack, interesting. :) Do I understand this correctly: When a process is swapped back in, the kernel stack is faulted in immediately and user space is faulted in as needed? And without swappable kernel stack, no extra action is required because the kernel stack is already in, and user space will be faulted in as usual?