From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tang Chen Date: Wed, 05 Dec 2012 02:07:34 +0000 Subject: Re: [Patch v4 08/12] memory-hotplug: remove memmap of sparse-vmemmap Message-Id: <50BEAC66.8020500@cn.fujitsu.com> List-Id: References: <1354010422-19648-1-git-send-email-wency@cn.fujitsu.com> <1354010422-19648-9-git-send-email-wency@cn.fujitsu.com> <50B5DC00.20103@huawei.com> <50B80FB1.6040906@cn.fujitsu.com> <50BC0D2D.8040008@huawei.com> <50BDBEB7.3070807@cn.fujitsu.com> <50BDEA82.4050809@huawei.com> In-Reply-To: <50BDEA82.4050809@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Jianguo Wu Cc: Wen Congyang , x86@kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-acpi@vger.kernel.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, linux-ia64@vger.kernel.org, cmetcalf@tilera.com, sparclinux@vger.kernel.org, David Rientjes , Jiang Liu , Len Brown , benh@kernel.crashing.org, paulus@samba.org, Christoph Lameter , Minchan Kim , Andrew Morton , KOSAKI Motohiro , Yasuaki Ishimatsu Hi Wu, On 12/04/2012 08:20 PM, Jianguo Wu wrote: (snip) >> >> Seems that we have different ways to handle pages allocated by bootmem >> or by regular allocator. Is the checking way in [PATCH 09/12] available >> here ? >> >> + /* bootmem page has reserved flag */ >> + if (PageReserved(page)) { >> ...... >> + } >> >> If so, I think we can just merge these two functions. > > Hmm, direct mapping table isn't allocated by bootmem allocator such as memblock, can't be free by put_page_bootmem(). > But I will try to merge these two functions. > Oh, I didn't notice this, thanks. :) (snip) >>> + >>> + __split_large_page(kpte, address, pbase); >> >> Is this patch going to replace [PATCH 08/12] ? >> > > I wish to replace [PATCH 08/12], but need Congyang and Yasuaki to confirm first:) > >> If so, __split_large_page() was added and exported in [PATCH 09/12], >> then we should move it here, right ? > > yes. > > and what do you think about moving vmemmap_pud[pmd/pte]_remove() to arch/x86/mm/init_64.c, > to be consistent with vmemmap_populate() ? It is a good idea since pud/pmd/pte related code could be platform dependent. And I'm also trying to move vmemmap_free() to arch/x86/mm/init_64.c too. I want to have a common interface just like vmemmap_populate(). :) > > I will rework [PATCH 08/12] and [PATCH 09/12] soon. I am rebasing the whole patch set now. And I think I chould finish part of your work too. A new patch-set is coming soon, and your rework is also welcome. :) Thanks. :)