Re: [PATCH v1 2/4] mm/memory_hotplug: Handle unaligned start and nr_pages in online_pages_blocks()

From: Michal Hocko
Date: Wed Aug 14 2019 - 12:02:24 EST


On Wed 14-08-19 16:28:21, David Hildenbrand wrote:
> On 14.08.19 16:17, David Hildenbrand wrote:
> > On 14.08.19 16:08, Michal Hocko wrote:
> >> On Fri 09-08-19 14:56:59, David Hildenbrand wrote:
> >>> Take care of nr_pages not being a power of two and start not being
> >>> properly aligned. Essentially, what walk_system_ram_range() could provide
> >>> to us. get_order() will round-up in case it's not a power of two.
> >>>
> >>> This should only apply to memory blocks that contain strange memory
> >>> resources (especially with holes), not to ordinary DIMMs.
> >>
> >> I would really like to see an example of such setup before making the
> >> code hard to read. Because I am not really sure something like that
> >> exists at all.
> >
> > I don't have a real-live example at hand (founds this while exploring
> > the code), however, the linked commit changed it without stating why it
> > would be safe to do so.
>
> So, while I agree that "not a power of two" is rare, are you sure we
> will only have holes that are aligned to 4MB (especially on x86)?

No I am not saying that because I do not know. I am not aware of any
such HW but that doesn't really mean anything. But I would like to see
an example and have it archived in the changelog before we make the code
more complicated.
--
Michal Hocko
SUSE Labs