All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michal Hocko <mhocko@kernel.org>
To: linux-mm@kvack.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Mel Gorman <mgorman@suse.de>, Vlastimil Babka <vbabka@suse.cz>,
	Andrea Arcangeli <aarcange@redhat.com>,
	Jerome Glisse <jglisse@redhat.com>,
	Reza Arbab <arbab@linux.vnet.ibm.com>,
	Yasuaki Ishimatsu <yasu.isimatu@gmail.com>,
	qiuxishi@huawei.com, Kani Toshimitsu <toshi.kani@hpe.com>,
	slaoub@gmail.com, Joonsoo Kim <js1304@gmail.com>,
	Andi Kleen <ak@linux.intel.com>,
	David Rientjes <rientjes@google.com>,
	Daniel Kiper <daniel.kiper@oracle.com>,
	Igor Mammedov <imammedo@redhat.com>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Michal Hocko <mhocko@suse.com>,
	Tobias Regnery <tobias.regnery@gmail.com>
Subject: [PATCH 8/9] mm, memory_hotplug: fix the section mismatch warning
Date: Mon, 10 Apr 2017 13:03:50 +0200	[thread overview]
Message-ID: <20170410110351.12215-9-mhocko@kernel.org> (raw)
In-Reply-To: <20170410110351.12215-1-mhocko@kernel.org>

From: Michal Hocko <mhocko@suse.com>

Tobias has reported following section mismatches introduced by "mm,
memory_hotplug: do not associate hotadded memory to zones until online".

WARNING: mm/built-in.o(.text+0x5a1c2): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:memmap_init_zone()
The function move_pfn_range_to_zone() references
the function __meminit memmap_init_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of memmap_init_zone is wrong.

WARNING: mm/built-in.o(.text+0x5a25b): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:init_currently_empty_zone()
The function move_pfn_range_to_zone() references
the function __meminit init_currently_empty_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of init_currently_empty_zone is wrong.

WARNING: vmlinux.o(.text+0x188aa2): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:memmap_init_zone()
The function move_pfn_range_to_zone() references
the function __meminit memmap_init_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of memmap_init_zone is wrong.

WARNING: vmlinux.o(.text+0x188b3b): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:init_currently_empty_zone()
The function move_pfn_range_to_zone() references
the function __meminit init_currently_empty_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of init_currently_empty_zone is wrong.

Both memmap_init_zone and init_currently_empty_zone are marked __meminit
but move_pfn_range_to_zone is used outside of __meminit sections (e.g.
devm_memremap_pages) so we have to hide it from the checker by __ref
annotation.

Reported-by: Tobias Regnery <tobias.regnery@gmail.com>
Signed-off-by: Michal Hocko <mhocko@suse.com>
---
 mm/memory_hotplug.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 43e84758057b..be8be844d340 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -1065,7 +1065,7 @@ static void __meminit resize_pgdat_range(struct pglist_data *pgdat, unsigned lon
 	pgdat->node_spanned_pages = max(start_pfn + nr_pages, old_end_pfn) - pgdat->node_start_pfn;
 }
 
-void move_pfn_range_to_zone(struct zone *zone,
+void __ref move_pfn_range_to_zone(struct zone *zone,
 		unsigned long start_pfn, unsigned long nr_pages)
 {
 	struct pglist_data *pgdat = zone->zone_pgdat;
-- 
2.11.0

WARNING: multiple messages have this Message-ID (diff)
From: Michal Hocko <mhocko@kernel.org>
To: linux-mm@kvack.org
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Mel Gorman <mgorman@suse.de>, Vlastimil Babka <vbabka@suse.cz>,
	Andrea Arcangeli <aarcange@redhat.com>,
	Jerome Glisse <jglisse@redhat.com>,
	Reza Arbab <arbab@linux.vnet.ibm.com>,
	Yasuaki Ishimatsu <yasu.isimatu@gmail.com>,
	qiuxishi@huawei.com, Kani Toshimitsu <toshi.kani@hpe.com>,
	slaoub@gmail.com, Joonsoo Kim <js1304@gmail.com>,
	Andi Kleen <ak@linux.intel.com>,
	David Rientjes <rientjes@google.com>,
	Daniel Kiper <daniel.kiper@oracle.com>,
	Igor Mammedov <imammedo@redhat.com>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Michal Hocko <mhocko@suse.com>,
	Tobias Regnery <tobias.regnery@gmail.com>
Subject: [PATCH 8/9] mm, memory_hotplug: fix the section mismatch warning
Date: Mon, 10 Apr 2017 13:03:50 +0200	[thread overview]
Message-ID: <20170410110351.12215-9-mhocko@kernel.org> (raw)
In-Reply-To: <20170410110351.12215-1-mhocko@kernel.org>

From: Michal Hocko <mhocko@suse.com>

Tobias has reported following section mismatches introduced by "mm,
memory_hotplug: do not associate hotadded memory to zones until online".

WARNING: mm/built-in.o(.text+0x5a1c2): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:memmap_init_zone()
The function move_pfn_range_to_zone() references
the function __meminit memmap_init_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of memmap_init_zone is wrong.

WARNING: mm/built-in.o(.text+0x5a25b): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:init_currently_empty_zone()
The function move_pfn_range_to_zone() references
the function __meminit init_currently_empty_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of init_currently_empty_zone is wrong.

WARNING: vmlinux.o(.text+0x188aa2): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:memmap_init_zone()
The function move_pfn_range_to_zone() references
the function __meminit memmap_init_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of memmap_init_zone is wrong.

WARNING: vmlinux.o(.text+0x188b3b): Section mismatch in reference from the function move_pfn_range_to_zone() to the function .meminit.text:init_currently_empty_zone()
The function move_pfn_range_to_zone() references
the function __meminit init_currently_empty_zone().
This is often because move_pfn_range_to_zone lacks a __meminit
annotation or the annotation of init_currently_empty_zone is wrong.

Both memmap_init_zone and init_currently_empty_zone are marked __meminit
but move_pfn_range_to_zone is used outside of __meminit sections (e.g.
devm_memremap_pages) so we have to hide it from the checker by __ref
annotation.

Reported-by: Tobias Regnery <tobias.regnery@gmail.com>
Signed-off-by: Michal Hocko <mhocko@suse.com>
---
 mm/memory_hotplug.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
index 43e84758057b..be8be844d340 100644
--- a/mm/memory_hotplug.c
+++ b/mm/memory_hotplug.c
@@ -1065,7 +1065,7 @@ static void __meminit resize_pgdat_range(struct pglist_data *pgdat, unsigned lon
 	pgdat->node_spanned_pages = max(start_pfn + nr_pages, old_end_pfn) - pgdat->node_start_pfn;
 }
 
-void move_pfn_range_to_zone(struct zone *zone,
+void __ref move_pfn_range_to_zone(struct zone *zone,
 		unsigned long start_pfn, unsigned long nr_pages)
 {
 	struct pglist_data *pgdat = zone->zone_pgdat;
-- 
2.11.0

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  parent reply	other threads:[~2017-04-10 11:04 UTC|newest]

Thread overview: 169+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-10 11:03 [PATCH -v2 0/9] mm: make movable onlining suck less Michal Hocko
2017-04-10 11:03 ` Michal Hocko
2017-04-10 11:03 ` [PATCH 1/9] mm: remove return value from init_currently_empty_zone Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-11  8:10   ` Balbir Singh
2017-04-11  8:10     ` Balbir Singh
2017-04-13 12:03   ` Vlastimil Babka
2017-04-13 12:03     ` Vlastimil Babka
2017-04-13 19:43   ` YASUAKI ISHIMATSU
2017-04-13 19:43     ` YASUAKI ISHIMATSU
2017-04-10 11:03 ` [PATCH 2/9] mm, memory_hotplug: use node instead of zone in can_online_high_movable Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-13 12:46   ` Vlastimil Babka
2017-04-13 12:46     ` Vlastimil Babka
2017-04-13 19:45   ` YASUAKI ISHIMATSU
2017-04-13 19:45     ` YASUAKI ISHIMATSU
2017-04-10 11:03 ` [PATCH 3/9] mm: drop page_initialized check from get_nid_for_pfn Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-13 12:59   ` Vlastimil Babka
2017-04-13 12:59     ` Vlastimil Babka
2017-04-10 11:03 ` [PATCH 4/9] mm, memory_hotplug: get rid of is_zone_device_section Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-10 16:20   ` Jerome Glisse
2017-04-10 16:20     ` Jerome Glisse
2017-04-10 16:31     ` Michal Hocko
2017-04-10 16:31       ` Michal Hocko
2017-04-13 13:05   ` Vlastimil Babka
2017-04-13 13:05     ` Vlastimil Babka
2017-04-17 20:12   ` Jerome Glisse
2017-04-17 20:12     ` Jerome Glisse
2017-04-18  7:19     ` Michal Hocko
2017-04-18  7:19       ` Michal Hocko
2017-04-10 11:03 ` [PATCH 5/9] mm, memory_hotplug: split up register_one_node Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-13 14:05   ` Vlastimil Babka
2017-04-13 14:05     ` Vlastimil Babka
2017-04-13 14:13     ` Michal Hocko
2017-04-13 14:13       ` Michal Hocko
2017-04-10 11:03 ` [PATCH 6/9] mm, memory_hotplug: do not associate hotadded memory to zones until online Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-10 16:25   ` [PATCH v3 " Michal Hocko
2017-04-10 16:25     ` Michal Hocko
2017-04-20  8:25     ` Vlastimil Babka
2017-04-20  8:25       ` Vlastimil Babka
2017-04-20  9:06       ` Michal Hocko
2017-04-20  9:06         ` Michal Hocko
2017-04-20 10:51         ` Vlastimil Babka
2017-04-20 10:51           ` Vlastimil Babka
2017-04-10 11:03 ` [PATCH 7/9] mm, memory_hotplug: replace for_device by want_memblock in arch_add_memory Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-20  8:29   ` Vlastimil Babka
2017-04-20  8:29     ` Vlastimil Babka
2017-04-10 11:03 ` Michal Hocko [this message]
2017-04-10 11:03   ` [PATCH 8/9] mm, memory_hotplug: fix the section mismatch warning Michal Hocko
2017-04-10 11:03 ` [PATCH 9/9] mm, memory_hotplug: remove unused cruft after memory hotplug rework Michal Hocko
2017-04-10 11:03   ` Michal Hocko
2017-04-20  8:38   ` Vlastimil Babka
2017-04-20  8:38     ` Vlastimil Babka
2017-04-10 14:27 ` [PATCH -v2 0/9] mm: make movable onlining suck less Igor Mammedov
2017-04-10 14:27   ` Igor Mammedov
2017-04-10 14:56   ` Michal Hocko
2017-04-10 14:56     ` Michal Hocko
2017-04-10 15:22     ` Michal Hocko
2017-04-10 15:22       ` Michal Hocko
2017-04-10 15:31       ` Michal Hocko
2017-04-10 15:31         ` Michal Hocko
2017-04-11  8:01     ` Igor Mammedov
2017-04-11  8:01       ` Igor Mammedov
2017-04-11  8:41       ` Michal Hocko
2017-04-11  8:41         ` Michal Hocko
2017-04-11  9:53         ` Igor Mammedov
2017-04-11  9:53           ` Igor Mammedov
2017-04-11 10:47           ` Michal Hocko
2017-04-11 10:47             ` Michal Hocko
2017-04-10 16:02   ` Michal Hocko
2017-04-10 16:02     ` Michal Hocko
2017-04-18  8:23     ` Vlastimil Babka
2017-04-18  8:23       ` Vlastimil Babka
2017-04-10 16:09   ` Michal Hocko
2017-04-10 16:09     ` Michal Hocko
2017-04-11  6:38     ` Igor Mammedov
2017-04-11  6:38       ` Igor Mammedov
2017-04-11  9:23       ` Michal Hocko
2017-04-11  9:23         ` Michal Hocko
2017-04-11  9:59         ` Igor Mammedov
2017-04-11  9:59           ` Igor Mammedov
2017-04-11 11:01           ` Michal Hocko
2017-04-11 11:01             ` Michal Hocko
2017-04-11 11:38             ` Michal Hocko
2017-04-11 11:38               ` Michal Hocko
2017-04-11 12:38               ` Michal Hocko
2017-04-11 12:38                 ` Michal Hocko
2017-04-10 15:43 ` Reza Arbab
2017-04-10 15:43   ` Reza Arbab
2017-04-11  8:59   ` Michal Hocko
2017-04-11  8:59     ` Michal Hocko
2017-04-10 16:35 ` Jerome Glisse
2017-04-10 16:35   ` Jerome Glisse
2017-04-10 17:53   ` Michal Hocko
2017-04-10 17:53     ` Michal Hocko
2017-04-11  2:51   ` Balbir Singh
2017-04-11  2:51     ` Balbir Singh
2017-04-11 17:03 ` Michal Hocko
2017-04-11 17:03   ` Michal Hocko
2017-04-17 21:51   ` Dan Williams
2017-04-17 21:51     ` Dan Williams
2017-04-18  7:14     ` Michal Hocko
2017-04-18  7:14       ` Michal Hocko
2017-04-18 16:42       ` Dan Williams
2017-04-18 16:42         ` Dan Williams
2017-04-18 19:54         ` Michal Hocko
2017-04-18 19:54           ` Michal Hocko
2017-04-20  3:37           ` Dan Williams
2017-04-20  3:37             ` Dan Williams
2017-04-15 12:17 ` Michal Hocko
2017-04-15 12:17   ` Michal Hocko
2017-04-15 12:17   ` [PATCH 1/3] mm: consider zone which is not fully populated to have holes Michal Hocko
2017-04-15 12:17     ` Michal Hocko
2017-04-18  8:45     ` Vlastimil Babka
2017-04-18  8:45       ` Vlastimil Babka
2017-04-18  9:27       ` Michal Hocko
2017-04-18  9:27         ` Michal Hocko
2017-04-19 11:59         ` Vlastimil Babka
2017-04-19 11:59           ` Vlastimil Babka
2017-04-19 12:16           ` Michal Hocko
2017-04-19 12:16             ` Michal Hocko
2017-04-19 12:34             ` Vlastimil Babka
2017-04-19 12:34               ` Vlastimil Babka
2017-04-19 12:50               ` Michal Hocko
2017-04-19 12:50                 ` Michal Hocko
2017-04-15 12:17   ` [PATCH 2/3] mm, compaction: skip over holes in __reset_isolation_suitable Michal Hocko
2017-04-15 12:17     ` Michal Hocko
2017-04-15 12:17   ` [PATCH 3/3] mm: __first_valid_page skip over offline pages Michal Hocko
2017-04-15 12:17     ` Michal Hocko
2017-04-17  5:47   ` your mail Joonsoo Kim
2017-04-17  5:47     ` Joonsoo Kim
2017-04-17  8:15     ` Michal Hocko
2017-04-17  8:15       ` Michal Hocko
2017-04-20  1:27       ` Joonsoo Kim
2017-04-20  1:27         ` Joonsoo Kim
2017-04-20  7:28         ` Michal Hocko
2017-04-20  7:28           ` Michal Hocko
2017-04-20  8:49           ` Michal Hocko
2017-04-20  8:49             ` Michal Hocko
2017-04-20 11:56             ` Vlastimil Babka
2017-04-20 11:56               ` Vlastimil Babka
2017-04-20 12:13               ` Michal Hocko
2017-04-20 12:13                 ` Michal Hocko
2017-04-21  2:46             ` [lkp-robot] 73821bb516: WARNING:at_mm/memblock.c:#memblock_virt_alloc_internal kernel test robot
2017-04-21  2:46               ` kernel test robot
2017-04-21  8:05               ` Michal Hocko
2017-04-21  8:05                 ` Michal Hocko
2017-04-21  8:05                 ` Michal Hocko
2017-04-21  4:38           ` your mail Joonsoo Kim
2017-04-21  4:38             ` Joonsoo Kim
2017-04-21  7:16             ` Michal Hocko
2017-04-21  7:16               ` Michal Hocko
2017-04-24  1:44               ` Joonsoo Kim
2017-04-24  1:44                 ` Joonsoo Kim
2017-04-24  7:53                 ` Michal Hocko
2017-04-24  7:53                   ` Michal Hocko
2017-04-25  2:50                   ` Joonsoo Kim
2017-04-25  2:50                     ` Joonsoo Kim
2017-04-26  9:19                     ` Michal Hocko
2017-04-26  9:19                       ` Michal Hocko
2017-04-27  2:08                       ` Joonsoo Kim
2017-04-27  2:08                         ` Joonsoo Kim
2017-04-27 15:10                         ` Michal Hocko
2017-04-27 15:10                           ` Michal Hocko

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=20170410110351.12215-9-mhocko@kernel.org \
    --to=mhocko@kernel.org \
    --cc=aarcange@redhat.com \
    --cc=ak@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=arbab@linux.vnet.ibm.com \
    --cc=daniel.kiper@oracle.com \
    --cc=imammedo@redhat.com \
    --cc=jglisse@redhat.com \
    --cc=js1304@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@suse.de \
    --cc=mhocko@suse.com \
    --cc=qiuxishi@huawei.com \
    --cc=rientjes@google.com \
    --cc=slaoub@gmail.com \
    --cc=tobias.regnery@gmail.com \
    --cc=toshi.kani@hpe.com \
    --cc=vbabka@suse.cz \
    --cc=vkuznets@redhat.com \
    --cc=yasu.isimatu@gmail.com \
    /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.