[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGM2reaB-jtqg1fhHZtopUy0N5dwMr4yF3iWFViLEFjbBqD_AA@mail.gmail.com>
Date: Mon, 9 Jul 2018 18:54:25 -0400
From: Pavel Tatashin <pasha.tatashin@...cle.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Steven Sistare <steven.sistare@...cle.com>,
Daniel Jordan <daniel.m.jordan@...cle.com>,
LKML <linux-kernel@...r.kernel.org>,
kirill.shutemov@...ux.intel.com, Michal Hocko <mhocko@...e.com>,
Linux Memory Management List <linux-mm@...ck.org>,
dan.j.williams@...el.com, jack@...e.cz, jglisse@...hat.com,
Souptick Joarder <jrdr.linux@...il.com>, bhe@...hat.com,
gregkh@...uxfoundation.org, Vlastimil Babka <vbabka@...e.cz>,
Wei Yang <richard.weiyang@...il.com>, dave.hansen@...el.com,
rientjes@...gle.com, mingo@...nel.org, osalvador@...hadventures.net
Subject: Re: [PATCH v4 0/3] sparse_init rewrite
On Mon, Jul 9, 2018 at 5:29 PM Andrew Morton <akpm@...ux-foundation.org> wrote:
>
> On Mon, 9 Jul 2018 13:53:09 -0400 Pavel Tatashin <pasha.tatashin@...cle.com> wrote:
>
> > In sparse_init() we allocate two large buffers to temporary hold usemap and
> > memmap for the whole machine. However, we can avoid doing that if we
> > changed sparse_init() to operated on per-node bases instead of doing it on
> > the whole machine beforehand.
> >
> > As shown by Baoquan
> > http://lkml.kernel.org/r/20180628062857.29658-1-bhe@redhat.com
> >
> > The buffers are large enough to cause machine stop to boot on small memory
> > systems.
> >
> > These patches should be applied on top of Baoquan's work, as
> > CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER is removed in that work.
> >
> > For the ease of review, I split this work so the first patch only adds new
> > interfaces, the second patch enables them, and removes the old ones.
>
> This clashes pretty significantly with patches from Baoquan and Oscar:
>
> mm-sparse-make-sparse_init_one_section-void-and-remove-check.patch
> mm-sparse-make-sparse_init_one_section-void-and-remove-check-fix.patch
> mm-sparse-make-sparse_init_one_section-void-and-remove-check-fix-2.patch
> mm-sparse-add-a-static-variable-nr_present_sections.patch
> mm-sparsemem-defer-the-ms-section_mem_map-clearing.patch
> mm-sparse-add-a-new-parameter-data_unit_size-for-alloc_usemap_and_memmap.patch
>
> Is there duplication of intent here? Any thoughts on the
> prioritization of these efforts?
Hi Andrew,
In the cover letter I wrote that these should be applied on top of
Baoquan's patches. His work fixes a bug by making temporary buffers
smaller on smaller machines, and also starts the sparse_init cleaning
process by getting rid of CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER. My
patches remove those buffers entirely. However, if my patches
conflict, I should resend based on mm-tree as Baoquan's patches are
already in and probably were slightly modified compared to what I have
locally, which I took from the mailing list.
Pavel
Powered by blists - more mailing lists