From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH 2/6] Use correct types to enable > 2G support (v2) Date: Sun, 10 Feb 2008 12:48:15 +0200 Message-ID: <47AED66F.3050201@qumranet.com> References: <1201903921-1125-1-git-send-email-aliguori@us.ibm.com> <1201903921-1125-3-git-send-email-aliguori@us.ibm.com> <47A670B4.6020803@codemonkey.ws> <1202114748.30861.6.camel@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm-devel@lists.sourceforge.net, Paul Brook , qemu-devel@nongnu.org, Fabrice Bellard To: Izik Eidus Return-path: In-Reply-To: <1202114748.30861.6.camel@localhost.localdomain> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: kvm-devel-bounces@lists.sourceforge.net Errors-To: kvm-devel-bounces@lists.sourceforge.net List-Id: kvm.vger.kernel.org Izik Eidus wrote: >> >>> Index: qemu/cpu-all.h >>> =================================================================== >>> --- qemu.orig/cpu-all.h 2008-02-01 15:24:45.000000000 -0600 >>> +++ qemu/cpu-all.h 2008-02-01 15:28:48.000000000 -0600 >>> @@ -695,7 +695,7 @@ >>> >>> /* page related stuff */ >>> >>> -#define TARGET_PAGE_SIZE (1 << TARGET_PAGE_BITS) >>> +#define TARGET_PAGE_SIZE (1ul << TARGET_PAGE_BITS) >>> #define TARGET_PAGE_MASK ~(TARGET_PAGE_SIZE - 1) >>> #define TARGET_PAGE_ALIGN(addr) (((addr) + TARGET_PAGE_SIZE - 1) & TARGET_PAGE_MASK >>> >> Do you recall what this change fixed? As Paul pointed out in IRC, using >> the host type here doesn't really fix the problem (target_ulong would be >> more appropriate). However, we're both curious what problem it's >> actually fixing since sign extending the int should just work. >> > > ok the commit say: > > kvm: qemu: change the type of the various page masks to unsigned long > > prevents truncation with >=4GB of guest physical memory > > > as far as i remember it was used to address something with > cpu_physical_memory_rw() probably related to &TARGET_PAGE_SIZE > or ~TARGET_PAGE_SIZE, > > the fact is that i dont know if it ever fixed anything > It fixes TARGET_PAGE_MASK, defined one line downscreen. I agree it should be changed to ((target_ulong)1 << TARGET_PAGE_BITS). -- error compiling committee.c: too many arguments to function ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/