public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Zachary Amsden <zach@vmware.com>
To: Chris Wright <chrisw@osdl.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	virtualization@lists.osdl.org, xen-devel@lists.xensource.com
Subject: Re: [PATCH, experimental] i386 Allow the fixmap to be relocated at boot time
Date: Fri, 05 Aug 2005 17:09:30 -0700	[thread overview]
Message-ID: <42F3FFBA.3040009@vmware.com> (raw)
In-Reply-To: <20050805234655.GY7762@shell0.pdx.osdl.net>

Chris Wright wrote:

>* Zachary Amsden (zach@vmware.com) wrote:
>  
>
>>This most curious patch allows the fixmap on i386 to be unfixed.  The 
>>result is that we can create a dynamically sizable hole at the top of 
>>kernel linear address space.  I know at least some virtualization 
>>developers are interested in being able to achieve this to achieve 
>>run-time sizing of a hole in which a hypervisor can live, or at least to 
>>test out the performance characteristics of different sized holes.
>>    
>>
>
>I've done it simpler with keeping it fixed but defined by the subarch.
>Patch is stupid simple (and untested).  Do you think there's a huge gain
>for dynamically sizing?
>

Your patch looks good, although the minimal change to subarch is to 
merely have __FIXADDR_TOP defined by the sub-architecture.  Is there any 
additional benefit to moving the fixmaps into the subarch - i.e. moving 
subarch-specific pieces out of mach-default?

I guess there is.  For example include/asm-i386/mach-visws/mach_fixmap.h 
could do this:

#define SUBARCH_FIXMAPS \
        FIX_CO_CPU,     /* Cobalt timer */ \
        FIX_CO_APIC,    /* Cobalt APIC Redirection Table */ \
        FIX_LI_PCIA,    /* Lithium PCI Bridge A */ \
        FIX_LI_PCIB,    /* Lithium PCI Bridge B */

Then include/asm-i386/fixmap.h includes <mach_fixmap.h>, for which the 
default is an empty define for SUBARCH_FIXMAPS.

And then you don't have to maintain the list of common fixmaps across 
the sub-architecture layer or uglify the top level fixmaps with SGI 
Visual Workstation support.

Also, it seems reasonable that people may want to poke holes in high 
linear space for other hypervisor projects, research, or performance 
reasons without having to build a custom sub-architecture just for 
that.  So I think there is some benefit to making the hole size a 
general configurable option (with defaults depending on the sub-arch you 
select).

I have no idea if the dynamic sizing has any performance impact yet, but 
it may be a big win in terms of flexibility.  I would be curious to hear 
more from the Xen core team (I know Ian mentioned he would like to try 
this out at one point in time).

Zach

  reply	other threads:[~2005-08-06  0:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-08-05 23:28 [PATCH,experimental] i386 Allow the fixmap to be relocated at boot time Zachary Amsden
2005-08-05 23:46 ` [PATCH, experimental] " Chris Wright
2005-08-06  0:09   ` Zachary Amsden [this message]
2005-08-06  0:22     ` Chris Wright
2005-08-06 12:48     ` Rusty Russell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=42F3FFBA.3040009@vmware.com \
    --to=zach@vmware.com \
    --cc=chrisw@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=virtualization@lists.osdl.org \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox