I am reading how qemu refill TLB working.

target-i386/helper.c

    pte = pte & env->a20_mask;

    /* Even if 4MB pages, we map only one 4KB page in the cache to
       avoid filling it too fast */
    page_offset = (addr & TARGET_PAGE_MASK) & (page_size - 1);
    paddr = (pte & TARGET_PAGE_MASK) + page_offset;
    vaddr = virt_addr + page_offset;


How can the paddr be bigger than 4G even though i gave the machine
4096 MB of memory ( i.e. qemu -m 4096 ...). should not paddr be within
0 - 4G-1 ?

Thanks

Xin

Reply via email to