From: Pavel Tatashin <pasha.tatashin@oracle.com>
To: steven.sistare@oracle.com, daniel.m.jordan@oracle.com,
linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
kirill.shutemov@linux.intel.com, mhocko@suse.com,
linux-mm@kvack.org, dan.j.williams@intel.com, jack@suse.cz,
jglisse@redhat.com, jrdr.linux@gmail.com, bhe@redhat.com,
gregkh@linuxfoundation.org, vbabka@suse.cz,
richard.weiyang@gmail.com, dave.hansen@intel.com,
rientjes@google.com, mingo@kernel.org,
osalvador@techadventures.net, pasha.tatashin@oracle.com,
abdhalee@linux.vnet.ibm.com, mpe@ellerman.id.au
Subject: [PATCH v6 0/5] sparse_init rewrite
Date: Mon, 16 Jul 2018 13:44:42 -0400 [thread overview]
Message-ID: <20180716174447.14529-1-pasha.tatashin@oracle.com> (raw)
Changelog:
v6 - v5
- Removed one more obsolete function, as Oscar noticed
- Replaced BUG_ON with WARN_ON, ALIGN with PTR_ALIGN.
- Added review-by, and test-by.
v5 - v4
- Fixed the issue that was reported on ppc64 when
CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER is removed
- Consolidated the new buffer allocation between vmemmap
and non-vmemmap variants of sparse layout.
- Removed all review-by comments, because I had to do
significant amount of changes compared to previous version
and need another round of review.
- I also would appreciate if those who reported problems with
PPC64 could test this change.
v4 - v3
- Addressed comments from Dave Hansen
v3 - v1
- Fixed two issues found by Baoquan He
v1 - v2
- Addressed comments from Oscar Salvador
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.
Another benefit of these changes is that they also obsolete
CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER.
Pavel Tatashin (5):
mm/sparse: abstract sparse buffer allocations
mm/sparse: use the new sparse buffer functions in non-vmemmap
mm/sparse: move buffer init/fini to the common place
mm/sparse: add new sparse_init_nid() and sparse_init()
mm/sparse: delete old sparse_init and enable new one
include/linux/mm.h | 7 +-
mm/Kconfig | 4 -
mm/sparse-vmemmap.c | 59 +--------
mm/sparse.c | 314 ++++++++++++++------------------------------
4 files changed, 102 insertions(+), 282 deletions(-)
--
2.18.0
next reply other threads:[~2018-07-16 17:45 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-16 17:44 Pavel Tatashin [this message]
2018-07-16 17:44 ` [PATCH v6 1/5] mm/sparse: abstract sparse buffer allocations Pavel Tatashin
2018-07-17 11:45 ` Oscar Salvador
2018-07-16 17:44 ` [PATCH v6 2/5] mm/sparse: use the new sparse buffer functions in non-vmemmap Pavel Tatashin
2018-07-17 11:57 ` Oscar Salvador
2018-07-16 17:44 ` [PATCH v6 3/5] mm/sparse: move buffer init/fini to the common place Pavel Tatashin
2018-07-16 17:44 ` [PATCH v6 4/5] mm/sparse: add new sparse_init_nid() and sparse_init() Pavel Tatashin
2018-07-16 17:44 ` [PATCH v6 5/5] mm/sparse: delete old sparse_init and enable new one Pavel Tatashin
2018-07-17 11:44 ` Oscar Salvador
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180716174447.14529-1-pasha.tatashin@oracle.com \
--to=pasha.tatashin@oracle.com \
--cc=abdhalee@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=bhe@redhat.com \
--cc=dan.j.williams@intel.com \
--cc=daniel.m.jordan@oracle.com \
--cc=dave.hansen@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=jack@suse.cz \
--cc=jglisse@redhat.com \
--cc=jrdr.linux@gmail.com \
--cc=kirill.shutemov@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mhocko@suse.com \
--cc=mingo@kernel.org \
--cc=mpe@ellerman.id.au \
--cc=osalvador@techadventures.net \
--cc=richard.weiyang@gmail.com \
--cc=rientjes@google.com \
--cc=steven.sistare@oracle.com \
--cc=vbabka@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox