]> 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)
commita034a335b92ebde0713c8e5ad22574a522720cf9
treeeb37fdad2bb18aed40413f1da902d510220cd4d6
parent11f2e6d331aac441effc478915e683a435519220
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