From owner-svn-src-projects@FreeBSD.ORG Thu Jul 29 17:06:41 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 716FA1065672; Thu, 29 Jul 2010 17:06:41 +0000 (UTC) (envelope-from alc@cs.rice.edu) Received: from mail.cs.rice.edu (mail.cs.rice.edu [128.42.1.31]) by mx1.freebsd.org (Postfix) with ESMTP id 493BE8FC15; Thu, 29 Jul 2010 17:06:41 +0000 (UTC) Received: from mail.cs.rice.edu (localhost.localdomain [127.0.0.1]) by mail.cs.rice.edu (Postfix) with ESMTP id D04142C2CA4; Thu, 29 Jul 2010 12:06:40 -0500 (CDT) X-Virus-Scanned: by amavis-2.4.0 at mail.cs.rice.edu Received: from mail.cs.rice.edu ([127.0.0.1]) by mail.cs.rice.edu (mail.cs.rice.edu [127.0.0.1]) (amavisd-new, port 10024) with LMTP id q+-VG2cyvEu7; Thu, 29 Jul 2010 12:06:33 -0500 (CDT) Received: from adsl-216-63-78-18.dsl.hstntx.swbell.net (adsl-216-63-78-18.dsl.hstntx.swbell.net [216.63.78.18]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.cs.rice.edu (Postfix) with ESMTP id E1E542C2C54; Thu, 29 Jul 2010 12:06:32 -0500 (CDT) Message-ID: <4C51B518.8060607@cs.rice.edu> Date: Thu, 29 Jul 2010 12:06:32 -0500 From: Alan Cox User-Agent: Thunderbird 2.0.0.24 (X11/20100501) MIME-Version: 1.0 To: Jeff Roberson References: <201007290212.o6T2CN20099343@svn.freebsd.org> <4C50FB4A.4000505@cs.rice.edu> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r210586 - projects/ofed/head/sys/ofed/include/linux X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Jul 2010 17:06:41 -0000 Jeff Roberson wrote: > On Wed, 28 Jul 2010, Alan Cox wrote: > >> Jeff Roberson wrote: >>> Author: jeff >>> Date: Thu Jul 29 02:12:22 2010 >>> New Revision: 210586 >>> URL: http://svn.freebsd.org/changeset/base/210586 >>> >>> Log: >>> - Refine various page allocation methods. They all essentially >>> override >>> the page object pointer to cache the virtual address after >>> allocation. >>> This same trick is used in UMA to store the slab address and so it >>> should be safe. >>> >> >> You needn't do this. The virtual address of a kernel_object or >> kmem_object page is easily obtained: >> >> VM_MIN_KERNEL_ADDRESS + IDX_TO_OFF(m->pindex) > > Ah, of course. I hadn't considered that. Thanks. I'll remove the > other hackery. > > On another note; linux guarantees multipage allocations are aligned on > the first power of two size that satisfies the allocation. I can do > this with contigmalloc but they also guarantee that the virtual > address is similarly aligned. I don't think I've run across anything > that requires it, but if I do, do we have any provision for allocating > virtually aligned addresses? > No, I'm afraid not. We only support a couple of specific cases of virtually aligned allocation: thread stacks on MIPS and the start of the large submaps on superpage-enabled architectures. Alan