On Tue, 29 Dec 2020 12:21:25 +0800 Li Xinhai <lixinhai.lxh@xxxxxxxxx> wrote: > The current code would unnecessarily expand the address range. Consider > one example, (start, end) = (1G-2M, 3G+2M), and (vm_start, vm_end) = > (1G-4M, 3G+4M), the expected adjustment should be keep (1G-2M, 3G+2M) > without expand. But the current result will be (1G-4M, 3G+4M). Actually, > the range (1G-4M, 1G) and (3G, 3G+4M) would never been involved in pmd > sharing. > > After this patch, if pud aligned *start across vm_start, then we know the > *start and vm_start are in same pud_index, and vm_start is not pud > aligned, so don't adjust *start. Same logic applied to *end. Thanks. What are the user-visible runtime effects of this issue?