From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eduardo Habkost Subject: Re: [Qemu-devel] Re: [PATCH] Make page_find() return 0 for too-large addresses Date: Fri, 12 Sep 2008 18:47:04 -0300 Message-ID: <20080912214704.GC10147@blackpad> References: <20080912185856.GM3982@blackpad> <48CAC809.5000901@codemonkey.ws> <20080912201406.GA10147@blackpad> <20080912204404.GB10147@blackpad> <48CADEC2.3060204@codemonkey.ws> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org, gcosta@redhat.com To: Anthony Liguori Return-path: Received: from mx2.redhat.com ([66.187.237.31]:55315 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756680AbYILVtG (ORCPT ); Fri, 12 Sep 2008 17:49:06 -0400 Content-Disposition: inline In-Reply-To: <48CADEC2.3060204@codemonkey.ws> Sender: kvm-owner@vger.kernel.org List-ID: On Fri, Sep 12, 2008 at 04:27:30PM -0500, Anthony Liguori wrote: > Eduardo Habkost wrote: >> On Fri, Sep 12, 2008 at 05:14:06PM -0300, Eduardo Habkost wrote: >> >>> On Fri, Sep 12, 2008 at 02:50:33PM -0500, Anthony Liguori wrote: >>> >>>> Eduardo Habkost wrote: >>>> >>>>> On some cases, such as under KVM, tb_invalidate_phys_page_range() >>>>> may be called for large addresses, when qemu is configured to more than >>>>> 4GB of RAM. >>>>> >>>>> On these cases, qemu was crashing because it was using an index too >>>>> large for l1_map[], that supports only 32-bit addresses when compiling >>>>> without CONFIG_USER_ONLY. >>>>> >> >> > > So... are you building with kqemu enabled? No, as I've stated in the reply I've sent before the patch. > If so, > TARGET_PHYS_ADDR_SPACE_BITS will be 32. So I don't think this sort of > work-around is correct. A better solution would be to validate ram_size > against TARGET_PHYS_ADDR_SPACE_BITS. This is a good idea (maybe it is already checked?), but it is not the case I am dealing with. > > To put it another way, if you have kqemu enabled (at build time), you > cannot use > ~4GB of memory for the guest. Right. -- Eduardo