From owner-cvs-src@FreeBSD.ORG Mon Sep 20 00:40:30 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1938A16A4CE; Mon, 20 Sep 2004 00:40:30 +0000 (GMT) Received: from ylpvm15.prodigy.net (ylpvm15-ext.prodigy.net [207.115.57.46]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB1CD43D1D; Mon, 20 Sep 2004 00:40:29 +0000 (GMT) (envelope-from julian@elischer.org) Received: from elischer.org (adsl-69-104-100-115.dsl.snfc21.pacbell.net [69.104.100.115])i8K0eTqM021771; Sun, 19 Sep 2004 20:40:30 -0400 Message-ID: <414E26FB.4010606@elischer.org> Date: Sun, 19 Sep 2004 17:40:27 -0700 From: Julian Elischer User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.4b) Gecko/20030524 X-Accept-Language: en, hu MIME-Version: 1.0 To: David Schultz References: <200409191834.i8JIYHXU089517@repoman.freebsd.org> <414E0DCA.5090601@elischer.org> <20040920001317.GA2829@VARK.MIT.EDU> In-Reply-To: <20040920001317.GA2829@VARK.MIT.EDU> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/kern kern_proc.c kern_switch.c src/sys/sys sched.h src/sys/vm vm_glue.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Sep 2004 00:40:30 -0000 David Schultz wrote: > On Sun, Sep 19, 2004, Julian Elischer wrote: > >>David Schultz wrote: >> >>>das 2004-09-19 18:34:17 UTC >>> >>> FreeBSD src repository >>> >>> Modified files: >>> sys/kern kern_proc.c kern_switch.c >>> sys/sys sched.h >>> sys/vm vm_glue.c >>> Log: >>> The zone from which proc structures are allocated is marked >>> UMA_ZONE_NOFREE to guarantee type stability, so proc_fini() should >>> never be called. Move an assertion from proc_fini() to proc_dtor() >>> and garbage-collect the rest of the unreachable code. I have retained >>> vm_proc_dispose(), since I consider its disuse a bug. >> >>well we do aim to one day remove the requirement for UMA_ZONE_NOFREE. >>In fact I have a gague feeling we mayhave already done so. I think it >>had to do with what page tables the kernel ran on after a thread went away. >>Peter may have a better memory as to why that was required. > > > We are clearly not there yet for things like p_vmspace. Look at > sys_process.c or procfs, for instance. But I don't mind backing > this out if someone is imminently preparing to remove the > requirement. it can probably stay out for now. I just thought I'd mention it.. > > By the way, it would be great if someone who understands it better > could edit the comments in sys/proc.h to reflect reality, > particularly with respect to the locking model. Some of it seems > to have rotted. For example, (l) and (m) are unused and p_stats > looks like it should be (c + j). I plan to edit all the comments WRT threads and processes. I need a day with no bugs.. :-) I also plane to write a proc/ksegrp/thread man page in '9' giving the theory on how it all fits together. I believe jhb has a p4 branch in which he is polishing locking stuff.