From owner-freebsd-arch@FreeBSD.ORG Sat Aug 2 07:57:39 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A44A737B401 for ; Sat, 2 Aug 2003 07:57:39 -0700 (PDT) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id E69D243F3F for ; Sat, 2 Aug 2003 07:57:38 -0700 (PDT) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.12.9/8.12.9) with ESMTP id h72EuYai002722; Sat, 2 Aug 2003 10:56:34 -0400 (EDT) (envelope-from robert@fledge.watson.org) Received: from localhost (robert@localhost)h72EuXoF002719; Sat, 2 Aug 2003 10:56:33 -0400 (EDT) Date: Sat, 2 Aug 2003 10:56:33 -0400 (EDT) From: Robert Watson X-Sender: robert@fledge.watson.org To: Poul-Henning Kamp In-Reply-To: <8035.1059809404@critter.freebsd.dk> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: arch@freebsd.org cc: Andy Farkas Subject: Re: headsup: swap_pager.c X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Aug 2003 14:57:40 -0000 On Sat, 2 Aug 2003, Poul-Henning Kamp wrote: > In message <20030802100150.H39348-100000@hewey.af.speednet.com.au>, Andy Farkas > writes: > > >I wasn't going to say anything (you can delete now) but the more I think > >about it, the more I think "if it aint broke, dont fix it". > > It is broken, it contains a bogo-vnode and it wastes RAM (it may be > cheap but you shouldn't use 4 times the necessary RAM). For me, the biggest benefit of this change is the removal of the bogo-vnode; I'd just like to make sure we don't see an observable performance hit in interesting cases. To clarify the notion of bogo-vnodes, for those less familiar with it, there are a few vnodes that are randomly pulled out of hats for some arbitrary things. They break some of the normal working assumptions of vnodes -- for example, almost every vnode in the system has a non-NULL v_mount pointer, and is associated with a mountpoint. The vnodes I know of that don't meet this property are the swap striping vnode, and the vnodes "pulled out of a hat" to refer to devices when you don't yet have access to the device file system. This occurs in bdevvp(), which converts a dev_t into a dummy vnode pointing at the device. Under normal circumstances, non-dead vnodes always have a file system they are associated with. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Network Associates Laboratories