All of lore.kernel.org
 help / color / mirror / Atom feed
From: Wei Yang <richardw.yang@linux.intel.com>
To: akpm@linux-foundation.org, osalvador@suse.de, dan.j.williams@intel.com
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, bhe@redhat.com,
	david@redhat.com, Wei Yang <richardw.yang@linux.intel.com>
Subject: [PATCH 1/3] mm/sparsemem: adjust memmap only for SPARSEMEM_VMEMMAP
Date: Fri,  7 Feb 2020 07:16:27 +0800	[thread overview]
Message-ID: <20200206231629.14151-2-richardw.yang@linux.intel.com> (raw)
In-Reply-To: <20200206231629.14151-1-richardw.yang@linux.intel.com>

Only when SPARSEMEM_VMEMMAP is set, memmap returned from
section_activate() points to sub-section page struct. Otherwise, memmap
already points to the whole section page struct.

This means only for SPARSEMEM_VMEMMAP, we need to adjust memmap for
sub-section case.

Fixes: ba72b4c8cf60 ("mm/sparsemem: support sub-section hotplug")
Signed-off-by: Wei Yang <richardw.yang@linux.intel.com>
CC: Dan Williams <dan.j.williams@intel.com>
---
 mm/sparse.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mm/sparse.c b/mm/sparse.c
index 586d85662978..b5da121bdd6e 100644
--- a/mm/sparse.c
+++ b/mm/sparse.c
@@ -886,7 +886,8 @@ int __meminit sparse_add_section(int nid, unsigned long start_pfn,
 	section_mark_present(ms);
 
 	/* Align memmap to section boundary in the subsection case */
-	if (section_nr_to_pfn(section_nr) != start_pfn)
+	if (IS_ENABLED(CONFIG_SPARSEMEM_VMEMMAP) &&
+		section_nr_to_pfn(section_nr) != start_pfn)
 		memmap = pfn_to_kaddr(section_nr_to_pfn(section_nr));
 	sparse_init_one_section(ms, section_nr, memmap, ms->usage, 0);
 
-- 
2.17.1


  reply	other threads:[~2020-02-06 23:17 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-06 23:16 [PATCH 0/3] Fixes "mm/sparsemem: support sub-section hotplug" Wei Yang
2020-02-06 23:16 ` Wei Yang [this message]
2020-02-07  2:00   ` [PATCH 1/3] mm/sparsemem: adjust memmap only for SPARSEMEM_VMEMMAP Dan Williams
2020-02-07  2:00     ` Dan Williams
2020-02-07 11:06     ` Wei Yang
2020-02-06 23:16 ` [PATCH 2/3] mm/sparsemem: get physical address to page struct instead of virtual address to pfn Wei Yang
2020-02-07  2:19   ` Dan Williams
2020-02-07  2:19     ` Dan Williams
2020-02-07  3:10     ` Baoquan He
2020-02-07  3:21       ` Dan Williams
2020-02-07  3:21         ` Dan Williams
2020-02-07  3:36         ` Baoquan He
2020-02-07  4:05           ` Dan Williams
2020-02-07  4:05             ` Dan Williams
2020-02-07 11:13           ` Wei Yang
2020-02-07 12:14         ` Wei Yang
2020-02-07 16:44           ` Dan Williams
2020-02-07 16:44             ` Dan Williams
2020-02-07 10:51     ` Wei Yang
2020-02-07 11:26     ` Wei Yang
2020-02-09 13:50       ` Baoquan He
2020-02-09 14:14         ` David Hildenbrand
2020-02-10  0:36           ` Wei Yang
2020-02-07  4:11   ` Baoquan He
2020-02-07 10:53     ` Wei Yang
2020-02-06 23:16 ` [PATCH 3/3] mm/sparsemem: avoid memmap overwrite for non-SPARSEMEM_VMEMMAP Wei Yang
2020-02-07  2:06   ` Dan Williams
2020-02-07  2:06     ` Dan Williams
2020-02-07  3:50     ` Baoquan He
2020-02-07 11:02     ` Wei Yang

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=20200206231629.14151-2-richardw.yang@linux.intel.com \
    --to=richardw.yang@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=bhe@redhat.com \
    --cc=dan.j.williams@intel.com \
    --cc=david@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=osalvador@suse.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.