From: Andrew Morton Subject: Re: [patch 7/8] Add a bootparameter to reserve high linear address space. Date: Wed, 2 Aug 2006 23:19:12 -0700 Message-ID: <20060802231912.ed77f930.akpm@osdl.org> References: <20060803002510.634721860@xensource.com> <20060803002518.595166293@xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20060803002518.595166293@xensource.com> Sender: linux-kernel-owner@vger.kernel.org To: Jeremy Fitzhardinge Cc: linux-kernel@vger.kernel.org, virtualization@lists.osdl.org, xen-devel@lists.xensource.com, jeremy@goop.org, zach@vmware.com, chrisw@sous-sol.org List-Id: xen-devel@lists.xenproject.org On Wed, 02 Aug 2006 17:25:17 -0700 Jeremy Fitzhardinge wrote: > + /* > + * reservetop=size reserves a hole at the top of the kernel > + * address space which a hypervisor can load into later. > + * Needed for dynamically loaded hypervisors, so relocating > + * the fixmap can be done before paging initialization. > + * This hole must be a multiple of 4M. > + */ > + else if (!memcmp(from, "reservetop=", 11)) { > + unsigned long reserve = memparse(from+11, &from); > + reserve &= ~0x3fffff; > + reserve_top_address(reserve); > + } I assume that this argument will normally be passed in via the hypervisor rather than by human-entered information? In which case, perhaps a panic would be a more appropriate response to a non-multiple-of-4M. Either way, rounding the number down rather than up seems wrong...