From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: [PATCH v2 5/9] xen/arm: cope with modules outside of "visible" RAM Date: Fri, 13 Sep 2013 12:40:33 +0100 Message-ID: <1379072437-28099-5-git-send-email-ian.campbell@citrix.com> References: <1379072409.19256.40.camel@kazak.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1379072409.19256.40.camel@kazak.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org Cc: julien.grall@linaro.org, tim@xen.org, Ian Campbell , andre.przywara@linaro.org, stefano.stabellini@eu.citrix.com List-Id: xen-devel@lists.xenproject.org This can happen if modules are in a bank which we can't cope with e.g. due to being non-contiguous. Signed-off-by: Ian Campbell --- xen/arch/arm/setup.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 8d8028c..0d9eaf7 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -387,6 +387,12 @@ static void __init setup_mm(unsigned long dtb_paddr, size_t dtb_size) e = n = ram_end; } + /* Module in RAM which we cannot see here, due to not handling + * non-contiguous memory regions yes + */ + if ( e > ram_end ) + e = ram_end; + /* Avoid the xenheap */ if ( s < ((xenheap_mfn_start+xenheap_pages) << PAGE_SHIFT) && (xenheap_mfn_start << PAGE_SHIFT) < e ) -- 1.7.10.4