On Sun, 2008-02-03 at 19:56 -0600, Anthony Liguori wrote: > Hi Izik, Hi
> > Anthony Liguori 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