Hi Will, On 9/7/20 4:23 PM, Will Deacon wrote: > [..] > + > +int kvm_pgtable_walk(struct kvm_pgtable *pgt, u64 addr, u64 size, > + struct kvm_pgtable_walker *walker) > +{ > + struct kvm_pgtable_walk_data walk_data = { > + .pgt = pgt, > + .addr = ALIGN_DOWN(addr, PAGE_SIZE), > + .end = PAGE_ALIGN(walk_data.addr + size), > + .walker = walker, > + }; If the caller wants to walk [0x500, 0x1500), for PAGE_SIZE = 0x1000 (4K), the function walks the range [0x0, 0x1000). Is that intentional? Thanks, Alex _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm