From owner-freebsd-emulation@FreeBSD.ORG Tue Mar 30 19:58:24 2010 Return-Path: Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 92B01106566B for ; Tue, 30 Mar 2010 19:58:24 +0000 (UTC) (envelope-from rth@twiddle.net) Received: from are.twiddle.net (are.twiddle.net [75.149.56.221]) by mx1.freebsd.org (Postfix) with ESMTP id 793108FC1C for ; Tue, 30 Mar 2010 19:58:24 +0000 (UTC) Received: from anchor.twiddle.home (anchor.twiddle.home [172.31.0.4]) by are.twiddle.net (Postfix) with ESMTPSA id E3C32431; Tue, 30 Mar 2010 12:42:03 -0700 (PDT) Message-ID: <4BB2540B.90704@twiddle.net> Date: Tue, 30 Mar 2010 12:42:03 -0700 From: Richard Henderson User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.8) Gecko/20100301 Fedora/3.0.3-1.fc12 Thunderbird/3.0.3 MIME-Version: 1.0 To: Juergen Lock References: <20100325204423.GA46954@triton8.kn-bremen.de> <20100330191629.GA95521@triton8.kn-bremen.de> In-Reply-To: <20100330191629.GA95521@triton8.kn-bremen.de> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Blue Swirl , freebsd-emulation@freebsd.org, Andreas Tobler , qemu-devel@nongnu.org, Toni Subject: Re: [Qemu-devel] qemu git head 20100323 on FreeBSD - qemu-devel port update for testing X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Mar 2010 19:58:24 -0000 On 03/30/2010 12:16 PM, Juergen Lock wrote: > I first tried to replace the endaddr in the !h2g_valid(endaddr) case with > ((abi_ulong)1 << L1_MAP_ADDR_SPACE_BITS) - 1 > if TARGET_ABI_BITS > L1_MAP_ADDR_SPACE_BITS (which comes from the condition > of the assert in page_set_flags() that was triggered on the ~0ul value), > but that caused the qemu process to grow into swap and made the box > usuable when that code was reached and I had to kill qemu. (The box has > 8 GB RAM.) And so I thought just leaving that page range unprotected > if only the start address is valid was the lesser evil... What's are the real arguments to the page_set_flags that causes things to go into swap? I can't imagine the range really being so large that it causes massive allocation within that function... r~