Messages in this thread | | | From | Dan Williams <> | Date | Wed, 14 Sep 2016 15:05:51 -0700 | Subject | Re: [PATCH] sparse: Track the boundaries of memory sections for accurate checks |
| |
On Wed, Sep 14, 2016 at 2:40 PM, Raslan, KarimAllah <karahmed@amazon.de> wrote: > > > On 6/20/16, 10:23 AM, "Michal Hocko" <mhocko@kernel.org> wrote: > > On Sat 18-06-16 12:11:19, KarimAllah Ahmed wrote: > > When sparse memory model is used an array of memory sections is created to > > track each block of contiguous physical pages. Each element of this array > > contains PAGES_PER_SECTION pages. During the creation of this array the actual > > boundaries of the memory block is lost, so the whole block is either considered > > as present or not. > > > > pfn_valid() in the sparse memory configuration checks which memory sections the > > pfn belongs to then checks whether it's present or not. This yields sub-optimal > > results when the available memory doesn't cover the whole memory section, > > because pfn_valid will return 'true' even for the unavailable pfns at the > > boundaries of the memory section. > > Please be more verbose of _why_ the patch is needed. Why those > "sub-optimal results" matter? > > Does this make sense to you ?
[ channeling my inner akpm ]
What's the user visible effect of this change? What code is getting tripped up by pfn_valid() being imprecise, and why is changing pfn_valid() the preferred fix?
| |