]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/pseries/cmm: Implement balloon compaction
authorDavid Hildenbrand <david@redhat.com>
Thu, 31 Oct 2019 14:29:29 +0000 (15:29 +0100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 13 Nov 2019 05:58:01 +0000 (16:58 +1100)
commit0af6ee1554d5424362012022435f1feb4cfd2939
treeeb37fdad2bb18aed40413f1da902d510220cd4d6
parent878eecc334ef6c2a09b029a7e64dca3b296f3caf
powerpc/pseries/cmm: Implement balloon compaction

We can now get rid of the cmm_lock and completely rely on the balloon
compaction internals, which now also manage the page list and the
lock.

Inflated/"loaned" pages are now movable. Memory blocks that contain
such pages can get offlined. Also, all such pages will be marked
PageOffline() and can therefore be excluded in memory dumps using
recent versions of makedumpfile.

Don't switch to balloon_page_alloc() yet (due to the GFP_NOIO). Will
do that separately to discuss this change in detail.

Signed-off-by: David Hildenbrand <david@redhat.com>
[mpe: Add isolated_pages-- in cmm_migratepage() as suggested by David]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20191031142933.10779-9-david@redhat.com
arch/powerpc/platforms/pseries/Kconfig
arch/powerpc/platforms/pseries/cmm.c
include/uapi/linux/magic.h