Re: [PATCH v4 1/3] x86/vmemmap: Drop handling of 4K unaligned vmemmap range

From: Dave Hansen
Date: Mon Mar 08 2021 - 13:27:19 EST


On 3/8/21 10:20 AM, Oscar Salvador wrote:
> On Thu, Mar 04, 2021 at 07:50:10AM -0800, Dave Hansen wrote:
>> On 3/1/21 12:32 AM, Oscar Salvador wrote:
>>> remove_pte_table() is prepared to handle the case where either the
>>> start or the end of the range is not PAGE aligned.
>>> This cannot actually happen:
>>>
>>> __populate_section_memmap enforces the range to be PMD aligned,
>>> so as long as the size of the struct page remains multiple of 8,
>>> the vmemmap range will be aligned to PAGE_SIZE.
>>>
>>> Drop the dead code and place a VM_BUG_ON in vmemmap_{populate,free}
>>> to catch nasty cases.
>> I was wondering why the VM_BUG_ON()s went in vmemmap_free() instead of
>> closer to the code that you modified in remove_pte_table(). I assume
>> this was because vmemmap_free() is the only (indirect) caller of
>> remove_pte_table().
> Yes, that was pretty much the reason.
> It seemed reasonable to me to fence it off at the "gate", and not further
> deep.
>
> Does it make sense to you? May I keep your Ack?

Yep, makes sense. If you rev the series, it would be nice to put that
in the changelog. But, either way, please keep the Ack!