From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Nljs2-0005WD-N7 for qemu-devel@nongnu.org; Sun, 28 Feb 2010 09:11:46 -0500 Received: from [199.232.76.173] (port=39214 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Nljs2-0005W4-7v for qemu-devel@nongnu.org; Sun, 28 Feb 2010 09:11:46 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1Nljs1-00087a-Ud for qemu-devel@nongnu.org; Sun, 28 Feb 2010 09:11:46 -0500 Received: from mx20.gnu.org ([199.232.41.8]:64767) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Nljs1-00087U-KU for qemu-devel@nongnu.org; Sun, 28 Feb 2010 09:11:45 -0500 Received: from mail.codesourcery.com ([38.113.113.100]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Nljs0-00075d-N4 for qemu-devel@nongnu.org; Sun, 28 Feb 2010 09:11:45 -0500 From: Paul Brook Subject: Re: [Qemu-devel] [PATCH 2/7] Use TARGET_VIRT_ADDR_SPACE_BITS in h2g_valid. Date: Sun, 28 Feb 2010 14:11:42 +0000 References: <61c1b83df6256642fb1b23f1e0a7a070bf0dfcfb.1266267595.git.rth@twiddle.net> In-Reply-To: <61c1b83df6256642fb1b23f1e0a7a070bf0dfcfb.1266267595.git.rth@twiddle.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201002281411.42381.paul@codesourcery.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: blauwirbel@gmail.com, Richard Henderson > /* All direct uses of g2h and h2g need to go away for usermode softmmu. > */ #define g2h(x) ((void *)((unsigned long)(x) + GUEST_BASE)) > + > +#if HOST_LONG_BITS == TARGET_VIRT_ADDR_SPACE_BITS Shouldn't this be <= ? 1ul << T_V_A_S_B is undefined for 64-bit guests on 32-bit hosts. > +#define h2g_valid(x) 1 > +#else > +#define h2g_valid(x) ({ \ > + unsigned long __guest = (unsigned long)(x) - GUEST_BASE; \ > + __guest < (1ul << TARGET_VIRT_ADDR_SPACE_BITS); \ Paul