Hi all, When I read cpu_get_phys_page_debug (target-i386/helper.c), I found the type of pde_addr and pte_addr might be not correct. See below,
--- target_phys_addr_t cpu_get_phys_page_debug(CPUX86State *env, target_ulong addr) { target_ulong pde_addr, pte_addr; ... pde_addr = ((pdpe & ~0xfff & ~(PG_NX_MASK | PG_HI_USER_MASK)) + (((addr >> 21) & 0x1ff) << 3)) & env->a20_mask; pde = ldq_phys(pde_addr); ... } --- HACKING says target_ulong is for guest virtual address and target_phys_addr_t is for guest physical address. IIUC, pde_addr and pte_addr should be the guest physical address for guest page table and guest page respectively, right? If no one object, I'll send a patch which replaces target_ulong with target_phys_addr_t. Thanks. Regards, chenwj -- Wei-Ren Chen (陳韋任) Computer Systems Lab, Institute of Information Science, Academia Sinica, Taiwan (R.O.C.) Tel:886-2-2788-3799 #1667 Homepage: http://people.cs.nctu.edu.tw/~chenwj