[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8c99aeb3-8287-1913-7362-464ac0c59ce1@redhat.com>
Date: Fri, 27 Sep 2019 13:19:49 +0200
From: David Hildenbrand <david@...hat.com>
To: linux-kernel@...r.kernel.org
Cc: linux-mm@...ck.org, linuxppc-dev@...ts.ozlabs.org,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
Michael Ellerman <mpe@...erman.id.au>,
Arun KS <arunks@...eaurora.org>,
Pavel Tatashin <pasha.tatashin@...een.com>,
Thomas Gleixner <tglx@...utronix.de>,
Andrew Morton <akpm@...ux-foundation.org>,
Vlastimil Babka <vbabka@...e.cz>,
Michal Hocko <mhocko@...nel.org>
Subject: Re: [PATCH v1] powerpc/pseries: CMM: Drop page array
On 25.09.19 09:37, David Hildenbrand wrote:
> On 10.09.19 18:39, David Hildenbrand wrote:
>> We can simply store the pages in a list (page->lru), no need for a
>> separate data structure (+ complicated handling). This is how most
>> other balloon drivers store allocated pages without additional tracking
>> data.
>>
>> For the notifiers, use page_to_pfn() to check if a page is in the
>> applicable range. plpar_page_set_loaned()/plpar_page_set_active() were
>> called with __pa(page_address()) for now, I assume we can simply switch
>> to page_to_phys() here. The pfn_to_kaddr() handling is now mostly gone.
>>
>> Cc: Benjamin Herrenschmidt <benh@...nel.crashing.org>
>> Cc: Paul Mackerras <paulus@...ba.org>
>> Cc: Michael Ellerman <mpe@...erman.id.au>
>> Cc: Arun KS <arunks@...eaurora.org>
>> Cc: Pavel Tatashin <pasha.tatashin@...een.com>
>> Cc: Thomas Gleixner <tglx@...utronix.de>
>> Cc: Andrew Morton <akpm@...ux-foundation.org>
>> Cc: Vlastimil Babka <vbabka@...e.cz>
>> Signed-off-by: David Hildenbrand <david@...hat.com>
>> ---
>>
>> Only compile-tested. I hope the page_to_phys() thingy is correct and I
>> didn't mess up something else / ignoring something important why the array
>> is needed.
>>
>> I stumbled over this while looking at how the memory isolation notifier is
>> used - and wondered why the additional array is necessary. Also, I think
>> by switching to the generic balloon compaction mechanism, we could get
>> rid of the memory hotplug notifier and the memory isolation notifier in
>> this code, as the migration capability of the inflated pages is the real
>> requirement:
>> commit 14b8a76b9d53346f2871bf419da2aaf219940c50
>> Author: Robert Jennings <rcj@...ux.vnet.ibm.com>
>> Date: Thu Dec 17 14:44:52 2009 +0000
>>
>> powerpc: Make the CMM memory hotplug aware
>>
>> The Collaborative Memory Manager (CMM) module allocates individual pages
>> over time that are not migratable. On a long running system this can
>> severely impact the ability to find enough pages to support a hotplug
>> memory remove operation.
>> [...]
>>
>> Thoughts?
>
> Ping, is still feature still used at all?
>
> If nobody can test, any advise on which HW I need and how to trigger it?
>
So ... if CMM is no longer alive I propose ripping it out completely.
Does anybody know if this feature is still getting used? Getting rid of
the memory isolation notifier sounds desirable - either by scrapping CMM
or by properly wiring up balloon compaction.
--
Thanks,
David / dhildenb
Powered by blists - more mailing lists