[PATCH v5 0/4] Cleanup and fixups for vmemmap handling

Oscar Salvador
2021-03-09T17:41:38Z

Hi,

this series contains cleanups to remove dead code that handles
unaligned cases for 4K and 1GB pages (patch#1 and patch#2) when
removing the vemmmap range, and a fix (patch#3) to handle the case
when two vmemmap ranges intersect the same PMD.

More details can be found in the respective changelogs.

v4 -> v5:
- Rebase on top of 5.12-rc2
- Addessed feedback from Dave
- Split previous patch#3 into core-changes (current patch#3) and
the optimization (current patch#4)
- Document better what is unused_pmd_start and its optimization
- Added Acked-by for patch#1

v3 -> v4:
- Rebase on top of 5.12-rc1 as Andrew suggested
- Added last Reviewed-by for the last patch

v2 -> v3:
- Make sure we do not clear the PUD entry in case
we are not removing the whole range.
- Add Reviewed-by

v1 -> v2:
- Remove dead code in remove_pud_table as well
- Addessed feedback by David
- Place the vmemap functions that take care of unaligned PMDs
within CONFIG_SPARSEMEM_VMEMMAP

Oscar Salvador (4):
x86/vmemmap: Drop handling of 4K unaligned vmemmap range
x86/vmemmap: Drop handling of 1GB vmemmap ranges
x86/vmemmap: Handle unpopulated sub-pmd ranges
x86/vmemmap: Optimize for consecutive sections in partial populated
PMDs

arch/x86/mm/init_64.c | 198 +++++++++++++++++++++++++++++++-------------------
1 file changed, 124 insertions(+), 74 deletions(-)

--
2.16.3