From owner-cvs-all@FreeBSD.ORG Sat Apr 29 18:52:58 2006 Return-Path: X-Original-To: cvs-all@freebsd.org Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 85C6216A400; Sat, 29 Apr 2006 18:52:58 +0000 (UTC) (envelope-from ssouhlal@FreeBSD.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.FreeBSD.org (Postfix) with ESMTP id 45E6443D46; Sat, 29 Apr 2006 18:52:58 +0000 (GMT) (envelope-from ssouhlal@FreeBSD.org) Received: from [192.168.250.3] (217-162-171-123.dclient.hispeed.ch [217.162.171.123]) by elvis.mu.org (Postfix) with ESMTP id 84EF01A4D87; Sat, 29 Apr 2006 11:52:56 -0700 (PDT) Message-ID: <4453B5D5.4090206@FreeBSD.org> Date: Sat, 29 Apr 2006 20:52:05 +0200 From: Suleiman Souhlal User-Agent: Mozilla Thunderbird 1.0.7 (X11/20051204) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Nate Lawson References: <200604281905.k3SJ59MZ008806@repoman.freebsd.org> <20060429024850.GB997@turion.vk2pj.dyndns.org> <4452FB64.7030308@root.org> <200604291021.12379.peter@wemm.org> <4453A429.5080406@root.org> In-Reply-To: <4453A429.5080406@root.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: src-committers@freebsd.org, cvs-all@freebsd.org, Peter Wemm , cvs-src@freebsd.org Subject: Re: cvs commit: src/sys/i386/i386 pmap.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 29 Apr 2006 18:52:58 -0000 Nate Lawson wrote: > Peter Wemm wrote: > >> Stephan realized that the kernel already allocates one PTE per virtual >> page. Although it normally holds physical addresses plus attributes, >> as long as we don't set PG_V, then there are 31 other bits that we >> could use for data storage. We could put virtual addresses in there >> so long as we didn't set PG_V, and abuse that to have a singly linked >> freelist threaded through the PTEs. It turned out even easier >> though. As long as the virtual addresses are page aligned, we neatly >> avoid all the PG_* mode bits as well. > > > ... because you can shift by the page size, saving 12 bits. But are > there any problems with 2 MB pages? It should work fine with 2/4MB pages too. Just like PTEs, when a PDE (the 2/4MB entry) is marked as not present, all the bits but the zeroth one are available for use to the operating system. -- Suleiman