All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
@ 2013-05-26  5:58 ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog:
 v1 -> v2:
	* show number of HighTotal before hotremove 
	* remove CONFIG_HIGHMEM
	* cc stable kernels
	* add Michal reviewed-by

Logic memory-remove code fails to correctly account the Total High Memory 
when a memory block which contains High Memory is offlined as shown in the
example below. The following patch fixes it.

Stable for 2.6.24+.

Before logic memory remove:

MemTotal:        7603740 kB
MemFree:         6329612 kB
Buffers:           94352 kB
Cached:           872008 kB
SwapCached:            0 kB
Active:           626932 kB
Inactive:         519216 kB
Active(anon):     180776 kB
Inactive(anon):   222944 kB
Active(file):     446156 kB
Inactive(file):   296272 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:       7294672 kB
HighFree:        5704696 kB
LowTotal:         309068 kB
LowFree:          624916 kB

After logic memory remove:

MemTotal:        7079452 kB
MemFree:         5805976 kB
Buffers:           94372 kB
Cached:           872000 kB
SwapCached:            0 kB
Active:           626936 kB
Inactive:         519236 kB
Active(anon):     180780 kB
Inactive(anon):   222944 kB
Active(file):     446156 kB
Inactive(file):   296292 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:       7294672 kB
HighFree:        5181024 kB
LowTotal:       4294752076 kB
LowFree:          624952 kB

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 mm/page_alloc.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 98cbdf6..23b921f 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
 		list_del(&page->lru);
 		rmv_page_order(page);
 		zone->free_area[order].nr_free--;
+		if (PageHighMem(page))
+			totalhigh_pages -= 1 << order;
 		for (i = 0; i < (1 << order); i++)
 			SetPageReserved((page+i));
 		pfn += (1 << order);
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
@ 2013-05-26  5:58 ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog:
 v1 -> v2:
	* show number of HighTotal before hotremove 
	* remove CONFIG_HIGHMEM
	* cc stable kernels
	* add Michal reviewed-by

Logic memory-remove code fails to correctly account the Total High Memory 
when a memory block which contains High Memory is offlined as shown in the
example below. The following patch fixes it.

Stable for 2.6.24+.

Before logic memory remove:

MemTotal:        7603740 kB
MemFree:         6329612 kB
Buffers:           94352 kB
Cached:           872008 kB
SwapCached:            0 kB
Active:           626932 kB
Inactive:         519216 kB
Active(anon):     180776 kB
Inactive(anon):   222944 kB
Active(file):     446156 kB
Inactive(file):   296272 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:       7294672 kB
HighFree:        5704696 kB
LowTotal:         309068 kB
LowFree:          624916 kB

After logic memory remove:

MemTotal:        7079452 kB
MemFree:         5805976 kB
Buffers:           94372 kB
Cached:           872000 kB
SwapCached:            0 kB
Active:           626936 kB
Inactive:         519236 kB
Active(anon):     180780 kB
Inactive(anon):   222944 kB
Active(file):     446156 kB
Inactive(file):   296292 kB
Unevictable:           0 kB
Mlocked:               0 kB
HighTotal:       7294672 kB
HighFree:        5181024 kB
LowTotal:       4294752076 kB
LowFree:          624952 kB

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 mm/page_alloc.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 98cbdf6..23b921f 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
 		list_del(&page->lru);
 		rmv_page_order(page);
 		zone->free_area[order].nr_free--;
+		if (PageHighMem(page))
+			totalhigh_pages -= 1 << order;
 		for (i = 0; i < (1 << order); i++)
 			SetPageReserved((page+i));
 		pfn += (1 << order);
-- 
1.8.1.2

--
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>

^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26  5:58   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

memory_add_physaddr_to_nid is not used any more, this patch remove it.

Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 arch/x86/mm/numa.c | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
index a71c4e2..d470a54 100644
--- a/arch/x86/mm/numa.c
+++ b/arch/x86/mm/numa.c
@@ -803,18 +803,3 @@ const struct cpumask *cpumask_of_node(int node)
 EXPORT_SYMBOL(cpumask_of_node);
 
 #endif	/* !CONFIG_DEBUG_PER_CPU_MAPS */
-
-#ifdef CONFIG_MEMORY_HOTPLUG
-int memory_add_physaddr_to_nid(u64 start)
-{
-	struct numa_meminfo *mi = &numa_meminfo;
-	int nid = mi->blk[0].nid;
-	int i;
-
-	for (i = 0; i < mi->nr_blks; i++)
-		if (mi->blk[i].start <= start && mi->blk[i].end > start)
-			nid = mi->blk[i].nid;
-	return nid;
-}
-EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
-#endif
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid
@ 2013-05-26  5:58   ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

memory_add_physaddr_to_nid is not used any more, this patch remove it.

Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 arch/x86/mm/numa.c | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
index a71c4e2..d470a54 100644
--- a/arch/x86/mm/numa.c
+++ b/arch/x86/mm/numa.c
@@ -803,18 +803,3 @@ const struct cpumask *cpumask_of_node(int node)
 EXPORT_SYMBOL(cpumask_of_node);
 
 #endif	/* !CONFIG_DEBUG_PER_CPU_MAPS */
-
-#ifdef CONFIG_MEMORY_HOTPLUG
-int memory_add_physaddr_to_nid(u64 start)
-{
-	struct numa_meminfo *mi = &numa_meminfo;
-	int nid = mi->blk[0].nid;
-	int i;
-
-	for (i = 0; i < mi->nr_blks; i++)
-		if (mi->blk[i].start <= start && mi->blk[i].end > start)
-			nid = mi->blk[i].nid;
-	return nid;
-}
-EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
-#endif
-- 
1.8.1.2

--
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>

^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26  5:58   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
it was born, this patch disable memory hotremove when 32bit at compile 
time.

Suggested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 mm/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mm/Kconfig b/mm/Kconfig
index e742d06..ada9569 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -184,6 +184,7 @@ config MEMORY_HOTREMOVE
 	bool "Allow for memory hot remove"
 	select MEMORY_ISOLATION
 	select HAVE_BOOTMEM_INFO_NODE if X86_64
+	depends on 64BIT
 	depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
 	depends on MIGRATION
 
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26  5:58   ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
it was born, this patch disable memory hotremove when 32bit at compile 
time.

Suggested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 mm/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/mm/Kconfig b/mm/Kconfig
index e742d06..ada9569 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -184,6 +184,7 @@ config MEMORY_HOTREMOVE
 	bool "Allow for memory hot remove"
 	select MEMORY_ISOLATION
 	select HAVE_BOOTMEM_INFO_NODE if X86_64
+	depends on 64BIT
 	depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
 	depends on MIGRATION
 
-- 
1.8.1.2

--
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>

^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 4/6] mm/hugetlb: use already exist interface huge_page_shift
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26  5:58   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog:
 v1 -> v2:
	* update alloc_bootmem_huge_page in powerpc 
	* add Michal reviewed-by 

Use already exist interface huge_page_shift instead of h->order + PAGE_SHIFT.

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 arch/powerpc/mm/hugetlbpage.c | 2 +-
 mm/hugetlb.c                  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c
index 237c8e5..cafec93 100644
--- a/arch/powerpc/mm/hugetlbpage.c
+++ b/arch/powerpc/mm/hugetlbpage.c
@@ -357,7 +357,7 @@ void add_gpage(u64 addr, u64 page_size, unsigned long number_of_pages)
 int alloc_bootmem_huge_page(struct hstate *hstate)
 {
 	struct huge_bootmem_page *m;
-	int idx = shift_to_mmu_psize(hstate->order + PAGE_SHIFT);
+	int idx = shift_to_mmu_psize(huge_page_shift(hstate));
 	int nr_gpages = gpage_freearray[idx].nr_gpages;
 
 	if (nr_gpages == 0)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index f8feeec..b6ff0ee 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -319,7 +319,7 @@ unsigned long vma_kernel_pagesize(struct vm_area_struct *vma)
 
 	hstate = hstate_vma(vma);
 
-	return 1UL << (hstate->order + PAGE_SHIFT);
+	return 1UL << huge_page_shift(hstate);
 }
 EXPORT_SYMBOL_GPL(vma_kernel_pagesize);
 
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 4/6] mm/hugetlb: use already exist interface huge_page_shift
@ 2013-05-26  5:58   ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog:
 v1 -> v2:
	* update alloc_bootmem_huge_page in powerpc 
	* add Michal reviewed-by 

Use already exist interface huge_page_shift instead of h->order + PAGE_SHIFT.

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 arch/powerpc/mm/hugetlbpage.c | 2 +-
 mm/hugetlb.c                  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c
index 237c8e5..cafec93 100644
--- a/arch/powerpc/mm/hugetlbpage.c
+++ b/arch/powerpc/mm/hugetlbpage.c
@@ -357,7 +357,7 @@ void add_gpage(u64 addr, u64 page_size, unsigned long number_of_pages)
 int alloc_bootmem_huge_page(struct hstate *hstate)
 {
 	struct huge_bootmem_page *m;
-	int idx = shift_to_mmu_psize(hstate->order + PAGE_SHIFT);
+	int idx = shift_to_mmu_psize(huge_page_shift(hstate));
 	int nr_gpages = gpage_freearray[idx].nr_gpages;
 
 	if (nr_gpages == 0)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index f8feeec..b6ff0ee 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -319,7 +319,7 @@ unsigned long vma_kernel_pagesize(struct vm_area_struct *vma)
 
 	hstate = hstate_vma(vma);
 
-	return 1UL << (hstate->order + PAGE_SHIFT);
+	return 1UL << huge_page_shift(hstate);
 }
 EXPORT_SYMBOL_GPL(vma_kernel_pagesize);
 
-- 
1.8.1.2

--
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>

^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 5/6] mm/pageblock: remove get/set_pageblock_flags
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26  5:58   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog: 
 v1 -> v2: 
	* add Michal reviewed-by 

get_pageblock_flags and set_pageblock_flags are not used any 
more, this patch remove them.

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 include/linux/pageblock-flags.h | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/include/linux/pageblock-flags.h b/include/linux/pageblock-flags.h
index be655e4..2ee8cd2 100644
--- a/include/linux/pageblock-flags.h
+++ b/include/linux/pageblock-flags.h
@@ -80,10 +80,4 @@ void set_pageblock_flags_group(struct page *page, unsigned long flags,
 							PB_migrate_skip)
 #endif /* CONFIG_COMPACTION */
 
-#define get_pageblock_flags(page) \
-			get_pageblock_flags_group(page, 0, PB_migrate_end)
-#define set_pageblock_flags(page, flags) \
-			set_pageblock_flags_group(page, flags,	\
-						  0, PB_migrate_end)
-
 #endif	/* PAGEBLOCK_FLAGS_H */
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 5/6] mm/pageblock: remove get/set_pageblock_flags
@ 2013-05-26  5:58   ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog: 
 v1 -> v2: 
	* add Michal reviewed-by 

get_pageblock_flags and set_pageblock_flags are not used any 
more, this patch remove them.

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 include/linux/pageblock-flags.h | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/include/linux/pageblock-flags.h b/include/linux/pageblock-flags.h
index be655e4..2ee8cd2 100644
--- a/include/linux/pageblock-flags.h
+++ b/include/linux/pageblock-flags.h
@@ -80,10 +80,4 @@ void set_pageblock_flags_group(struct page *page, unsigned long flags,
 							PB_migrate_skip)
 #endif /* CONFIG_COMPACTION */
 
-#define get_pageblock_flags(page) \
-			get_pageblock_flags_group(page, 0, PB_migrate_end)
-#define set_pageblock_flags(page, flags) \
-			set_pageblock_flags_group(page, flags,	\
-						  0, PB_migrate_end)
-
 #endif	/* PAGEBLOCK_FLAGS_H */
-- 
1.8.1.2

--
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>

^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 6/6] mm/hugetlb: remove hugetlb_prefault
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26  5:58   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog:
 v1 -> v2: 
	* add Michal reviewed-by 

hugetlb_prefault are not used any more, this patch remove it.

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 include/linux/hugetlb.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 6b4890f..a811149 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -55,7 +55,6 @@ void __unmap_hugepage_range_final(struct mmu_gather *tlb,
 void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma,
 				unsigned long start, unsigned long end,
 				struct page *ref_page);
-int hugetlb_prefault(struct address_space *, struct vm_area_struct *);
 void hugetlb_report_meminfo(struct seq_file *);
 int hugetlb_report_node_meminfo(int, char *);
 void hugetlb_show_meminfo(void);
@@ -110,7 +109,6 @@ static inline unsigned long hugetlb_total_pages(void)
 #define follow_hugetlb_page(m,v,p,vs,a,b,i,w)	({ BUG(); 0; })
 #define follow_huge_addr(mm, addr, write)	ERR_PTR(-EINVAL)
 #define copy_hugetlb_page_range(src, dst, vma)	({ BUG(); 0; })
-#define hugetlb_prefault(mapping, vma)		({ BUG(); 0; })
 static inline void hugetlb_report_meminfo(struct seq_file *m)
 {
 }
-- 
1.8.1.2


^ permalink raw reply related	[flat|nested] 53+ messages in thread

* [PATCH v3 6/6] mm/hugetlb: remove hugetlb_prefault
@ 2013-05-26  5:58   ` Wanpeng Li
  0 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  5:58 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Wanpeng Li

Changelog:
 v1 -> v2: 
	* add Michal reviewed-by 

hugetlb_prefault are not used any more, this patch remove it.

Reviewed-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
---
 include/linux/hugetlb.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
index 6b4890f..a811149 100644
--- a/include/linux/hugetlb.h
+++ b/include/linux/hugetlb.h
@@ -55,7 +55,6 @@ void __unmap_hugepage_range_final(struct mmu_gather *tlb,
 void __unmap_hugepage_range(struct mmu_gather *tlb, struct vm_area_struct *vma,
 				unsigned long start, unsigned long end,
 				struct page *ref_page);
-int hugetlb_prefault(struct address_space *, struct vm_area_struct *);
 void hugetlb_report_meminfo(struct seq_file *);
 int hugetlb_report_node_meminfo(int, char *);
 void hugetlb_show_meminfo(void);
@@ -110,7 +109,6 @@ static inline unsigned long hugetlb_total_pages(void)
 #define follow_hugetlb_page(m,v,p,vs,a,b,i,w)	({ BUG(); 0; })
 #define follow_huge_addr(mm, addr, write)	ERR_PTR(-EINVAL)
 #define copy_hugetlb_page_range(src, dst, vma)	({ BUG(); 0; })
-#define hugetlb_prefault(mapping, vma)		({ BUG(); 0; })
 static inline void hugetlb_report_meminfo(struct seq_file *m)
 {
 }
-- 
1.8.1.2

--
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>

^ permalink raw reply related	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid
  2013-05-26  5:58   ` Wanpeng Li
@ 2013-05-26  8:59     ` Michal Hocko
  -1 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26  8:59 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun 26-05-13 13:58:37, Wanpeng Li wrote:
> memory_add_physaddr_to_nid is not used any more, this patch remove it.

git grep disagrees.
git grep "= *\<memory_add_physaddr_to_nid\>" mmotm
mmotm:drivers/acpi/acpi_memhotplug.c:                   node = memory_add_physaddr_to_nid(info->start_addr);
mmotm:drivers/acpi/acpi_memhotplug.c:                   nid = memory_add_physaddr_to_nid(info->start_addr);
mmotm:drivers/base/memory.c:            nid = memory_add_physaddr_to_nid(phys_addr);
mmotm:drivers/xen/balloon.c:    nid = memory_add_physaddr_to_nid(hotplug_start_paddr);

> 
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  arch/x86/mm/numa.c | 15 ---------------
>  1 file changed, 15 deletions(-)
> 
> diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
> index a71c4e2..d470a54 100644
> --- a/arch/x86/mm/numa.c
> +++ b/arch/x86/mm/numa.c
> @@ -803,18 +803,3 @@ const struct cpumask *cpumask_of_node(int node)
>  EXPORT_SYMBOL(cpumask_of_node);
>  
>  #endif	/* !CONFIG_DEBUG_PER_CPU_MAPS */
> -
> -#ifdef CONFIG_MEMORY_HOTPLUG
> -int memory_add_physaddr_to_nid(u64 start)
> -{
> -	struct numa_meminfo *mi = &numa_meminfo;
> -	int nid = mi->blk[0].nid;
> -	int i;
> -
> -	for (i = 0; i < mi->nr_blks; i++)
> -		if (mi->blk[i].start <= start && mi->blk[i].end > start)
> -			nid = mi->blk[i].nid;
> -	return nid;
> -}
> -EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
> -#endif
> -- 
> 1.8.1.2
> 

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid
@ 2013-05-26  8:59     ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26  8:59 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun 26-05-13 13:58:37, Wanpeng Li wrote:
> memory_add_physaddr_to_nid is not used any more, this patch remove it.

git grep disagrees.
git grep "= *\<memory_add_physaddr_to_nid\>" mmotm
mmotm:drivers/acpi/acpi_memhotplug.c:                   node = memory_add_physaddr_to_nid(info->start_addr);
mmotm:drivers/acpi/acpi_memhotplug.c:                   nid = memory_add_physaddr_to_nid(info->start_addr);
mmotm:drivers/base/memory.c:            nid = memory_add_physaddr_to_nid(phys_addr);
mmotm:drivers/xen/balloon.c:    nid = memory_add_physaddr_to_nid(hotplug_start_paddr);

> 
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  arch/x86/mm/numa.c | 15 ---------------
>  1 file changed, 15 deletions(-)
> 
> diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
> index a71c4e2..d470a54 100644
> --- a/arch/x86/mm/numa.c
> +++ b/arch/x86/mm/numa.c
> @@ -803,18 +803,3 @@ const struct cpumask *cpumask_of_node(int node)
>  EXPORT_SYMBOL(cpumask_of_node);
>  
>  #endif	/* !CONFIG_DEBUG_PER_CPU_MAPS */
> -
> -#ifdef CONFIG_MEMORY_HOTPLUG
> -int memory_add_physaddr_to_nid(u64 start)
> -{
> -	struct numa_meminfo *mi = &numa_meminfo;
> -	int nid = mi->blk[0].nid;
> -	int i;
> -
> -	for (i = 0; i < mi->nr_blks; i++)
> -		if (mi->blk[i].start <= start && mi->blk[i].end > start)
> -			nid = mi->blk[i].nid;
> -	return nid;
> -}
> -EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
> -#endif
> -- 
> 1.8.1.2
> 

-- 
Michal Hocko
SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26  5:58   ` Wanpeng Li
@ 2013-05-26  9:00     ` Michal Hocko
  -1 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26  9:00 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
> it was born, 

Why? any reference? This reasoning is really weak.

> this patch disable memory hotremove when 32bit at compile 
> time.
> 
> Suggested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  mm/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/mm/Kconfig b/mm/Kconfig
> index e742d06..ada9569 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -184,6 +184,7 @@ config MEMORY_HOTREMOVE
>  	bool "Allow for memory hot remove"
>  	select MEMORY_ISOLATION
>  	select HAVE_BOOTMEM_INFO_NODE if X86_64
> +	depends on 64BIT
>  	depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
>  	depends on MIGRATION
>  
> -- 
> 1.8.1.2
> 

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26  9:00     ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26  9:00 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
> it was born, 

Why? any reference? This reasoning is really weak.

> this patch disable memory hotremove when 32bit at compile 
> time.
> 
> Suggested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  mm/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/mm/Kconfig b/mm/Kconfig
> index e742d06..ada9569 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -184,6 +184,7 @@ config MEMORY_HOTREMOVE
>  	bool "Allow for memory hot remove"
>  	select MEMORY_ISOLATION
>  	select HAVE_BOOTMEM_INFO_NODE if X86_64
> +	depends on 64BIT
>  	depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
>  	depends on MIGRATION
>  
> -- 
> 1.8.1.2
> 

-- 
Michal Hocko
SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid
  2013-05-26  8:59     ` Michal Hocko
  (?)
@ 2013-05-26  9:03     ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  9:03 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 10:59:38AM +0200, Michal Hocko wrote:
>On Sun 26-05-13 13:58:37, Wanpeng Li wrote:
>> memory_add_physaddr_to_nid is not used any more, this patch remove it.
>
>git grep disagrees.
>git grep "= *\<memory_add_physaddr_to_nid\>" mmotm
>mmotm:drivers/acpi/acpi_memhotplug.c:                   node = memory_add_physaddr_to_nid(info->start_addr);
>mmotm:drivers/acpi/acpi_memhotplug.c:                   nid = memory_add_physaddr_to_nid(info->start_addr);
>mmotm:drivers/base/memory.c:            nid = memory_add_physaddr_to_nid(phys_addr);
>mmotm:drivers/xen/balloon.c:    nid = memory_add_physaddr_to_nid(hotplug_start_paddr);
>

Oh, sorry, I make a mistake here. 

>> 
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  arch/x86/mm/numa.c | 15 ---------------
>>  1 file changed, 15 deletions(-)
>> 
>> diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
>> index a71c4e2..d470a54 100644
>> --- a/arch/x86/mm/numa.c
>> +++ b/arch/x86/mm/numa.c
>> @@ -803,18 +803,3 @@ const struct cpumask *cpumask_of_node(int node)
>>  EXPORT_SYMBOL(cpumask_of_node);
>>  
>>  #endif	/* !CONFIG_DEBUG_PER_CPU_MAPS */
>> -
>> -#ifdef CONFIG_MEMORY_HOTPLUG
>> -int memory_add_physaddr_to_nid(u64 start)
>> -{
>> -	struct numa_meminfo *mi = &numa_meminfo;
>> -	int nid = mi->blk[0].nid;
>> -	int i;
>> -
>> -	for (i = 0; i < mi->nr_blks; i++)
>> -		if (mi->blk[i].start <= start && mi->blk[i].end > start)
>> -			nid = mi->blk[i].nid;
>> -	return nid;
>> -}
>> -EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
>> -#endif
>> -- 
>> 1.8.1.2
>> 
>
>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid
  2013-05-26  8:59     ` Michal Hocko
  (?)
  (?)
@ 2013-05-26  9:03     ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  9:03 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 10:59:38AM +0200, Michal Hocko wrote:
>On Sun 26-05-13 13:58:37, Wanpeng Li wrote:
>> memory_add_physaddr_to_nid is not used any more, this patch remove it.
>
>git grep disagrees.
>git grep "= *\<memory_add_physaddr_to_nid\>" mmotm
>mmotm:drivers/acpi/acpi_memhotplug.c:                   node = memory_add_physaddr_to_nid(info->start_addr);
>mmotm:drivers/acpi/acpi_memhotplug.c:                   nid = memory_add_physaddr_to_nid(info->start_addr);
>mmotm:drivers/base/memory.c:            nid = memory_add_physaddr_to_nid(phys_addr);
>mmotm:drivers/xen/balloon.c:    nid = memory_add_physaddr_to_nid(hotplug_start_paddr);
>

Oh, sorry, I make a mistake here. 

>> 
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  arch/x86/mm/numa.c | 15 ---------------
>>  1 file changed, 15 deletions(-)
>> 
>> diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
>> index a71c4e2..d470a54 100644
>> --- a/arch/x86/mm/numa.c
>> +++ b/arch/x86/mm/numa.c
>> @@ -803,18 +803,3 @@ const struct cpumask *cpumask_of_node(int node)
>>  EXPORT_SYMBOL(cpumask_of_node);
>>  
>>  #endif	/* !CONFIG_DEBUG_PER_CPU_MAPS */
>> -
>> -#ifdef CONFIG_MEMORY_HOTPLUG
>> -int memory_add_physaddr_to_nid(u64 start)
>> -{
>> -	struct numa_meminfo *mi = &numa_meminfo;
>> -	int nid = mi->blk[0].nid;
>> -	int i;
>> -
>> -	for (i = 0; i < mi->nr_blks; i++)
>> -		if (mi->blk[i].start <= start && mi->blk[i].end > start)
>> -			nid = mi->blk[i].nid;
>> -	return nid;
>> -}
>> -EXPORT_SYMBOL_GPL(memory_add_physaddr_to_nid);
>> -#endif
>> -- 
>> 1.8.1.2
>> 
>
>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26  9:00     ` Michal Hocko
  (?)
@ 2013-05-26  9:06     ` Wanpeng Li
  2013-05-26 18:12         ` Michal Hocko
  -1 siblings, 1 reply; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  9:06 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
>On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
>> it was born, 
>
>Why? any reference? This reasoning is really weak.
>

http://marc.info/?l=linux-mm&m=136953099010171&w=2

>> this patch disable memory hotremove when 32bit at compile 
>> time.
>> 
>> Suggested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  mm/Kconfig | 1 +
>>  1 file changed, 1 insertion(+)
>> 
>> diff --git a/mm/Kconfig b/mm/Kconfig
>> index e742d06..ada9569 100644
>> --- a/mm/Kconfig
>> +++ b/mm/Kconfig
>> @@ -184,6 +184,7 @@ config MEMORY_HOTREMOVE
>>  	bool "Allow for memory hot remove"
>>  	select MEMORY_ISOLATION
>>  	select HAVE_BOOTMEM_INFO_NODE if X86_64
>> +	depends on 64BIT
>>  	depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
>>  	depends on MIGRATION
>>  
>> -- 
>> 1.8.1.2
>> 
>
>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26  9:00     ` Michal Hocko
  (?)
  (?)
@ 2013-05-26  9:06     ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26  9:06 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
>On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
>> it was born, 
>
>Why? any reference? This reasoning is really weak.
>

http://marc.info/?l=linux-mm&m=136953099010171&w=2

>> this patch disable memory hotremove when 32bit at compile 
>> time.
>> 
>> Suggested-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  mm/Kconfig | 1 +
>>  1 file changed, 1 insertion(+)
>> 
>> diff --git a/mm/Kconfig b/mm/Kconfig
>> index e742d06..ada9569 100644
>> --- a/mm/Kconfig
>> +++ b/mm/Kconfig
>> @@ -184,6 +184,7 @@ config MEMORY_HOTREMOVE
>>  	bool "Allow for memory hot remove"
>>  	select MEMORY_ISOLATION
>>  	select HAVE_BOOTMEM_INFO_NODE if X86_64
>> +	depends on 64BIT
>>  	depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE
>>  	depends on MIGRATION
>>  
>> -- 
>> 1.8.1.2
>> 
>
>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26 11:49   ` KOSAKI Motohiro
  -1 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 11:49 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 1:58 AM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
> Changelog:
>  v1 -> v2:
>         * show number of HighTotal before hotremove
>         * remove CONFIG_HIGHMEM
>         * cc stable kernels
>         * add Michal reviewed-by
>
> Logic memory-remove code fails to correctly account the Total High Memory
> when a memory block which contains High Memory is offlined as shown in the
> example below. The following patch fixes it.
>
> Stable for 2.6.24+.
>
> Before logic memory remove:
>
> MemTotal:        7603740 kB
> MemFree:         6329612 kB
> Buffers:           94352 kB
> Cached:           872008 kB
> SwapCached:            0 kB
> Active:           626932 kB
> Inactive:         519216 kB
> Active(anon):     180776 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296272 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5704696 kB
> LowTotal:         309068 kB
> LowFree:          624916 kB
>
> After logic memory remove:
>
> MemTotal:        7079452 kB
> MemFree:         5805976 kB
> Buffers:           94372 kB
> Cached:           872000 kB
> SwapCached:            0 kB
> Active:           626936 kB
> Inactive:         519236 kB
> Active(anon):     180780 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296292 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5181024 kB
> LowTotal:       4294752076 kB
> LowFree:          624952 kB
>
> Reviewed-by: Michal Hocko <mhocko@suse.cz>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  mm/page_alloc.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 98cbdf6..23b921f 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>                 list_del(&page->lru);
>                 rmv_page_order(page);
>                 zone->free_area[order].nr_free--;
> +               if (PageHighMem(page))
> +                       totalhigh_pages -= 1 << order;
>                 for (i = 0; i < (1 << order); i++)
>                         SetPageReserved((page+i));
>                 pfn += (1 << order);

Hm. I already NAKed and you didn't answered my question. isn't it?

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
@ 2013-05-26 11:49   ` KOSAKI Motohiro
  0 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 11:49 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 1:58 AM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
> Changelog:
>  v1 -> v2:
>         * show number of HighTotal before hotremove
>         * remove CONFIG_HIGHMEM
>         * cc stable kernels
>         * add Michal reviewed-by
>
> Logic memory-remove code fails to correctly account the Total High Memory
> when a memory block which contains High Memory is offlined as shown in the
> example below. The following patch fixes it.
>
> Stable for 2.6.24+.
>
> Before logic memory remove:
>
> MemTotal:        7603740 kB
> MemFree:         6329612 kB
> Buffers:           94352 kB
> Cached:           872008 kB
> SwapCached:            0 kB
> Active:           626932 kB
> Inactive:         519216 kB
> Active(anon):     180776 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296272 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5704696 kB
> LowTotal:         309068 kB
> LowFree:          624916 kB
>
> After logic memory remove:
>
> MemTotal:        7079452 kB
> MemFree:         5805976 kB
> Buffers:           94372 kB
> Cached:           872000 kB
> SwapCached:            0 kB
> Active:           626936 kB
> Inactive:         519236 kB
> Active(anon):     180780 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296292 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5181024 kB
> LowTotal:       4294752076 kB
> LowFree:          624952 kB
>
> Reviewed-by: Michal Hocko <mhocko@suse.cz>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  mm/page_alloc.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 98cbdf6..23b921f 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>                 list_del(&page->lru);
>                 rmv_page_order(page);
>                 zone->free_area[order].nr_free--;
> +               if (PageHighMem(page))
> +                       totalhigh_pages -= 1 << order;
>                 for (i = 0; i < (1 << order); i++)
>                         SetPageReserved((page+i));
>                 pfn += (1 << order);

Hm. I already NAKed and you didn't answered my question. isn't it?

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26  9:00     ` Michal Hocko
@ 2013-05-26 11:58       ` KOSAKI Motohiro
  -1 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 11:58 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>> it was born,
>
> Why? any reference? This reasoning is really weak.

I have no seen any highmem support in memory hotplug code and I don't think this
patch fixes all 32bit highmem issue. If anybody are interesting to
support it, it is good thing. But in fact, _now_ it is broken when
enable HIGHMEM.
So, I just want to mark broken until someone want to support highmem
and verify overall.

And, yes, this patch is no good. Kconfig doesn't describe why disable
when highmem.
So,

depends on 64BIT || !HIGHMEM || BROKEN

maybe clear documentation more.

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 11:58       ` KOSAKI Motohiro
  0 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 11:58 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>> it was born,
>
> Why? any reference? This reasoning is really weak.

I have no seen any highmem support in memory hotplug code and I don't think this
patch fixes all 32bit highmem issue. If anybody are interesting to
support it, it is good thing. But in fact, _now_ it is broken when
enable HIGHMEM.
So, I just want to mark broken until someone want to support highmem
and verify overall.

And, yes, this patch is no good. Kconfig doesn't describe why disable
when highmem.
So,

depends on 64BIT || !HIGHMEM || BROKEN

maybe clear documentation more.

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 11:58       ` KOSAKI Motohiro
@ 2013-05-26 12:45         ` Hush Bensen
  -1 siblings, 0 replies; 53+ messages in thread
From: Hush Bensen @ 2013-05-26 12:45 UTC (permalink / raw)
  To: KOSAKI Motohiro, Michal Hocko
  Cc: Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

于 2013/5/26 19:58, KOSAKI Motohiro 写道:
>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>> it was born,
>> Why? any reference? This reasoning is really weak.
> I have no seen any highmem support in memory hotplug code and I don't think this
> patch fixes all 32bit highmem issue. If anybody are interesting to
> support it, it is good thing. But in fact, _now_ it is broken when
> enable HIGHMEM.

But online/offline memory can work well when enable HIGHMEM, isn't it?

> So, I just want to mark broken until someone want to support highmem
> and verify overall.
>
> And, yes, this patch is no good. Kconfig doesn't describe why disable
> when highmem.
> So,
>
> depends on 64BIT || !HIGHMEM || BROKEN
>
> maybe clear documentation more.
>
> --
> 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>


^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 12:45         ` Hush Bensen
  0 siblings, 0 replies; 53+ messages in thread
From: Hush Bensen @ 2013-05-26 12:45 UTC (permalink / raw)
  To: KOSAKI Motohiro, Michal Hocko
  Cc: Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

ao? 2013/5/26 19:58, KOSAKI Motohiro a??e??:
>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>> it was born,
>> Why? any reference? This reasoning is really weak.
> I have no seen any highmem support in memory hotplug code and I don't think this
> patch fixes all 32bit highmem issue. If anybody are interesting to
> support it, it is good thing. But in fact, _now_ it is broken when
> enable HIGHMEM.

But online/offline memory can work well when enable HIGHMEM, isn't it?

> So, I just want to mark broken until someone want to support highmem
> and verify overall.
>
> And, yes, this patch is no good. Kconfig doesn't describe why disable
> when highmem.
> So,
>
> depends on 64BIT || !HIGHMEM || BROKEN
>
> maybe clear documentation more.
>
> --
> 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>

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 12:45         ` Hush Bensen
@ 2013-05-26 13:06           ` KOSAKI Motohiro
  -1 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 13:06 UTC (permalink / raw)
  To: Hush Bensen
  Cc: Michal Hocko, Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 8:45 AM, Hush Bensen <hush.bensen@gmail.com> wrote:
> 于 2013/5/26 19:58, KOSAKI Motohiro 写道:
>
>>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>>> it was born,
>>>
>>> Why? any reference? This reasoning is really weak.
>>
>> I have no seen any highmem support in memory hotplug code and I don't
>> think this
>> patch fixes all 32bit highmem issue. If anybody are interesting to
>> support it, it is good thing. But in fact, _now_ it is broken when
>> enable HIGHMEM.
>
>
> But online/offline memory can work well when enable HIGHMEM, isn't it?

If you are lucky.

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 13:06           ` KOSAKI Motohiro
  0 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 13:06 UTC (permalink / raw)
  To: Hush Bensen
  Cc: Michal Hocko, Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 8:45 AM, Hush Bensen <hush.bensen@gmail.com> wrote:
> 于 2013/5/26 19:58, KOSAKI Motohiro 写道:
>
>>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>>> it was born,
>>>
>>> Why? any reference? This reasoning is really weak.
>>
>> I have no seen any highmem support in memory hotplug code and I don't
>> think this
>> patch fixes all 32bit highmem issue. If anybody are interesting to
>> support it, it is good thing. But in fact, _now_ it is broken when
>> enable HIGHMEM.
>
>
> But online/offline memory can work well when enable HIGHMEM, isn't it?

If you are lucky.

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 13:06           ` KOSAKI Motohiro
@ 2013-05-26 13:49             ` Hush Bensen
  -1 siblings, 0 replies; 53+ messages in thread
From: Hush Bensen @ 2013-05-26 13:49 UTC (permalink / raw)
  To: KOSAKI Motohiro
  Cc: Michal Hocko, Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

于 2013/5/26 21:06, KOSAKI Motohiro 写道:
> On Sun, May 26, 2013 at 8:45 AM, Hush Bensen <hush.bensen@gmail.com> wrote:
>> 于 2013/5/26 19:58, KOSAKI Motohiro 写道:
>>
>>>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>>>> it was born,
>>>> Why? any reference? This reasoning is really weak.
>>> I have no seen any highmem support in memory hotplug code and I don't
>>> think this
>>> patch fixes all 32bit highmem issue. If anybody are interesting to
>>> support it, it is good thing. But in fact, _now_ it is broken when
>>> enable HIGHMEM.
>>
>> But online/offline memory can work well when enable HIGHMEM, isn't it?
> If you are lucky.
I think it can work well on my x86_32 with highmem enable box.

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 13:49             ` Hush Bensen
  0 siblings, 0 replies; 53+ messages in thread
From: Hush Bensen @ 2013-05-26 13:49 UTC (permalink / raw)
  To: KOSAKI Motohiro
  Cc: Michal Hocko, Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

ao? 2013/5/26 21:06, KOSAKI Motohiro a??e??:
> On Sun, May 26, 2013 at 8:45 AM, Hush Bensen <hush.bensen@gmail.com> wrote:
>> ao? 2013/5/26 19:58, KOSAKI Motohiro a??e??:
>>
>>>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>>>> it was born,
>>>> Why? any reference? This reasoning is really weak.
>>> I have no seen any highmem support in memory hotplug code and I don't
>>> think this
>>> patch fixes all 32bit highmem issue. If anybody are interesting to
>>> support it, it is good thing. But in fact, _now_ it is broken when
>>> enable HIGHMEM.
>>
>> But online/offline memory can work well when enable HIGHMEM, isn't it?
> If you are lucky.
I think it can work well on my x86_32 with highmem enable box.

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26  5:58 ` Wanpeng Li
@ 2013-05-26 14:26   ` Liu Jiang
  -1 siblings, 0 replies; 53+ messages in thread
From: Liu Jiang @ 2013-05-26 14:26 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Andrew Morton

On Sun 26 May 2013 01:58:36 PM CST, Wanpeng Li wrote:
> Changelog:
>  v1 -> v2:
> 	* show number of HighTotal before hotremove
> 	* remove CONFIG_HIGHMEM
> 	* cc stable kernels
> 	* add Michal reviewed-by
>
> Logic memory-remove code fails to correctly account the Total High Memory
> when a memory block which contains High Memory is offlined as shown in the
> example below. The following patch fixes it.
>
> Stable for 2.6.24+.
>
> Before logic memory remove:
>
> MemTotal:        7603740 kB
> MemFree:         6329612 kB
> Buffers:           94352 kB
> Cached:           872008 kB
> SwapCached:            0 kB
> Active:           626932 kB
> Inactive:         519216 kB
> Active(anon):     180776 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296272 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5704696 kB
> LowTotal:         309068 kB
> LowFree:          624916 kB
>
> After logic memory remove:
>
> MemTotal:        7079452 kB
> MemFree:         5805976 kB
> Buffers:           94372 kB
> Cached:           872000 kB
> SwapCached:            0 kB
> Active:           626936 kB
> Inactive:         519236 kB
> Active(anon):     180780 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296292 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5181024 kB
> LowTotal:       4294752076 kB
> LowFree:          624952 kB
>
> Reviewed-by: Michal Hocko <mhocko@suse.cz>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  mm/page_alloc.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 98cbdf6..23b921f 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>  		list_del(&page->lru);
>  		rmv_page_order(page);
>  		zone->free_area[order].nr_free--;
> +		if (PageHighMem(page))
> +			totalhigh_pages -= 1 << order;
>  		for (i = 0; i < (1 << order); i++)
>  			SetPageReserved((page+i));
>  		pfn += (1 << order);

Hi Wanpeng,
         The memory hotplug code adjusts totalram_pages, 
totalhigh_pages,  zone->present_pages
and zone->managed_pages all in memory_hotplug.c, so suggest to move 
this into memory_hotplug.c
too.
          One of my patch fixes this issue in another way, please refer 
to:
http://marc.info/?l=linux-mm&m=136957578620221&w=2
Regards!
Gerry

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
@ 2013-05-26 14:26   ` Liu Jiang
  0 siblings, 0 replies; 53+ messages in thread
From: Liu Jiang @ 2013-05-26 14:26 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, linux-kernel, Greg Kroah-Hartman,
	stable, Andrew Morton

On Sun 26 May 2013 01:58:36 PM CST, Wanpeng Li wrote:
> Changelog:
>  v1 -> v2:
> 	* show number of HighTotal before hotremove
> 	* remove CONFIG_HIGHMEM
> 	* cc stable kernels
> 	* add Michal reviewed-by
>
> Logic memory-remove code fails to correctly account the Total High Memory
> when a memory block which contains High Memory is offlined as shown in the
> example below. The following patch fixes it.
>
> Stable for 2.6.24+.
>
> Before logic memory remove:
>
> MemTotal:        7603740 kB
> MemFree:         6329612 kB
> Buffers:           94352 kB
> Cached:           872008 kB
> SwapCached:            0 kB
> Active:           626932 kB
> Inactive:         519216 kB
> Active(anon):     180776 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296272 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5704696 kB
> LowTotal:         309068 kB
> LowFree:          624916 kB
>
> After logic memory remove:
>
> MemTotal:        7079452 kB
> MemFree:         5805976 kB
> Buffers:           94372 kB
> Cached:           872000 kB
> SwapCached:            0 kB
> Active:           626936 kB
> Inactive:         519236 kB
> Active(anon):     180780 kB
> Inactive(anon):   222944 kB
> Active(file):     446156 kB
> Inactive(file):   296292 kB
> Unevictable:           0 kB
> Mlocked:               0 kB
> HighTotal:       7294672 kB
> HighFree:        5181024 kB
> LowTotal:       4294752076 kB
> LowFree:          624952 kB
>
> Reviewed-by: Michal Hocko <mhocko@suse.cz>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
>  mm/page_alloc.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 98cbdf6..23b921f 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>  		list_del(&page->lru);
>  		rmv_page_order(page);
>  		zone->free_area[order].nr_free--;
> +		if (PageHighMem(page))
> +			totalhigh_pages -= 1 << order;
>  		for (i = 0; i < (1 << order); i++)
>  			SetPageReserved((page+i));
>  		pfn += (1 << order);

Hi Wanpeng,
         The memory hotplug code adjusts totalram_pages, 
totalhigh_pages,  zone->present_pages
and zone->managed_pages all in memory_hotplug.c, so suggest to move 
this into memory_hotplug.c
too.
          One of my patch fixes this issue in another way, please refer 
to:
http://marc.info/?l=linux-mm&m=136957578620221&w=2
Regards!
Gerry

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 11:58       ` KOSAKI Motohiro
@ 2013-05-26 18:09         ` Michal Hocko
  -1 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26 18:09 UTC (permalink / raw)
  To: KOSAKI Motohiro
  Cc: Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

On Sun 26-05-13 07:58:42, KOSAKI Motohiro wrote:
> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
> >> it was born,
> >
> > Why? any reference? This reasoning is really weak.
> 
> I have no seen any highmem support in memory hotplug code and I don't think this
> patch fixes all 32bit highmem issue. If anybody are interesting to
> support it, it is good thing. But in fact, _now_ it is broken when
> enable HIGHMEM.
> So, I just want to mark broken until someone want to support highmem
> and verify overall.
> 
> And, yes, this patch is no good. Kconfig doesn't describe why disable
> when highmem.
> So,
> 
> depends on 64BIT || !HIGHMEM || BROKEN
> 
> maybe clear documentation more.

I have no objection to disbale the feature for HIGHMEM configurations I
was merely complaining that the patch didn't describe _why_.

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 18:09         ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26 18:09 UTC (permalink / raw)
  To: KOSAKI Motohiro
  Cc: Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

On Sun 26-05-13 07:58:42, KOSAKI Motohiro wrote:
> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
> >> it was born,
> >
> > Why? any reference? This reasoning is really weak.
> 
> I have no seen any highmem support in memory hotplug code and I don't think this
> patch fixes all 32bit highmem issue. If anybody are interesting to
> support it, it is good thing. But in fact, _now_ it is broken when
> enable HIGHMEM.
> So, I just want to mark broken until someone want to support highmem
> and verify overall.
> 
> And, yes, this patch is no good. Kconfig doesn't describe why disable
> when highmem.
> So,
> 
> depends on 64BIT || !HIGHMEM || BROKEN
> 
> maybe clear documentation more.

I have no objection to disbale the feature for HIGHMEM configurations I
was merely complaining that the patch didn't describe _why_.

-- 
Michal Hocko
SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26  9:06     ` Wanpeng Li
@ 2013-05-26 18:12         ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26 18:12 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
> >> it was born, 
> >
> >Why? any reference? This reasoning is really weak.
> >
> 
> http://marc.info/?l=linux-mm&m=136953099010171&w=2

I have seen the email but that email just states that the feature is
broken. Maybe it is obvious to you _what_ is actually broken but it
doesn't need to be others especially those who would be reading such
changelog later. So if you consider this configuration broken then be
specific what is broken.

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 18:12         ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-26 18:12 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
> >> it was born, 
> >
> >Why? any reference? This reasoning is really weak.
> >
> 
> http://marc.info/?l=linux-mm&m=136953099010171&w=2

I have seen the email but that email just states that the feature is
broken. Maybe it is obvious to you _what_ is actually broken but it
doesn't need to be others especially those who would be reading such
changelog later. So if you consider this configuration broken then be
specific what is broken.

-- 
Michal Hocko
SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 18:09         ` Michal Hocko
@ 2013-05-26 22:02           ` KOSAKI Motohiro
  -1 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 22:02 UTC (permalink / raw)
  To: Michal Hocko
  Cc: KOSAKI Motohiro, Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

(5/26/13 2:09 PM), Michal Hocko wrote:
> On Sun 26-05-13 07:58:42, KOSAKI Motohiro wrote:
>>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>>> it was born,
>>>
>>> Why? any reference? This reasoning is really weak.
>>
>> I have no seen any highmem support in memory hotplug code and I don't think this
>> patch fixes all 32bit highmem issue. If anybody are interesting to
>> support it, it is good thing. But in fact, _now_ it is broken when
>> enable HIGHMEM.
>> So, I just want to mark broken until someone want to support highmem
>> and verify overall.
>>
>> And, yes, this patch is no good. Kconfig doesn't describe why disable
>> when highmem.
>> So,
>>
>> depends on 64BIT || !HIGHMEM || BROKEN
>>
>> maybe clear documentation more.
> 
> I have no objection to disbale the feature for HIGHMEM configurations I
> was merely complaining that the patch didn't describe _why_.

No worry. I withdrew the claim because several people now willing to contribute
32bit highmem improvement. I don't want to block them.



^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-26 22:02           ` KOSAKI Motohiro
  0 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-26 22:02 UTC (permalink / raw)
  To: Michal Hocko
  Cc: KOSAKI Motohiro, Wanpeng Li, Andrew Morton, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

(5/26/13 2:09 PM), Michal Hocko wrote:
> On Sun 26-05-13 07:58:42, KOSAKI Motohiro wrote:
>>>> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since
>>>> it was born,
>>>
>>> Why? any reference? This reasoning is really weak.
>>
>> I have no seen any highmem support in memory hotplug code and I don't think this
>> patch fixes all 32bit highmem issue. If anybody are interesting to
>> support it, it is good thing. But in fact, _now_ it is broken when
>> enable HIGHMEM.
>> So, I just want to mark broken until someone want to support highmem
>> and verify overall.
>>
>> And, yes, this patch is no good. Kconfig doesn't describe why disable
>> when highmem.
>> So,
>>
>> depends on 64BIT || !HIGHMEM || BROKEN
>>
>> maybe clear documentation more.
> 
> I have no objection to disbale the feature for HIGHMEM configurations I
> was merely complaining that the patch didn't describe _why_.

No worry. I withdrew the claim because several people now willing to contribute
32bit highmem improvement. I don't want to block them.


--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26 14:26   ` Liu Jiang
  (?)
  (?)
@ 2013-05-26 23:44   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26 23:44 UTC (permalink / raw)
  To: Liu Jiang
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 10:26:34PM +0800, Liu Jiang wrote:
>On Sun 26 May 2013 01:58:36 PM CST, Wanpeng Li wrote:
>> Changelog:
>>  v1 -> v2:
>> 	* show number of HighTotal before hotremove
>> 	* remove CONFIG_HIGHMEM
>> 	* cc stable kernels
>> 	* add Michal reviewed-by
>>
>> Logic memory-remove code fails to correctly account the Total High Memory
>> when a memory block which contains High Memory is offlined as shown in the
>> example below. The following patch fixes it.
>>
>> Stable for 2.6.24+.
>>
>> Before logic memory remove:
>>
>> MemTotal:        7603740 kB
>> MemFree:         6329612 kB
>> Buffers:           94352 kB
>> Cached:           872008 kB
>> SwapCached:            0 kB
>> Active:           626932 kB
>> Inactive:         519216 kB
>> Active(anon):     180776 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296272 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5704696 kB
>> LowTotal:         309068 kB
>> LowFree:          624916 kB
>>
>> After logic memory remove:
>>
>> MemTotal:        7079452 kB
>> MemFree:         5805976 kB
>> Buffers:           94372 kB
>> Cached:           872000 kB
>> SwapCached:            0 kB
>> Active:           626936 kB
>> Inactive:         519236 kB
>> Active(anon):     180780 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296292 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5181024 kB
>> LowTotal:       4294752076 kB
>> LowFree:          624952 kB
>>
>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  mm/page_alloc.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>> index 98cbdf6..23b921f 100644
>> --- a/mm/page_alloc.c
>> +++ b/mm/page_alloc.c
>> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>>  		list_del(&page->lru);
>>  		rmv_page_order(page);
>>  		zone->free_area[order].nr_free--;
>> +		if (PageHighMem(page))
>> +			totalhigh_pages -= 1 << order;
>>  		for (i = 0; i < (1 << order); i++)
>>  			SetPageReserved((page+i));
>>  		pfn += (1 << order);
>
>Hi Wanpeng,
>         The memory hotplug code adjusts totalram_pages, 
>totalhigh_pages,  zone->present_pages
>and zone->managed_pages all in memory_hotplug.c, so suggest to move 
>this into memory_hotplug.c
>too.
>          One of my patch fixes this issue in another way, please refer 
>to:
>http://marc.info/?l=linux-mm&m=136957578620221&w=2

Greate to see your effort. ;-)

>Regards!
>Gerry

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26 14:26   ` Liu Jiang
  (?)
@ 2013-05-26 23:44   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26 23:44 UTC (permalink / raw)
  To: Liu Jiang
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 10:26:34PM +0800, Liu Jiang wrote:
>On Sun 26 May 2013 01:58:36 PM CST, Wanpeng Li wrote:
>> Changelog:
>>  v1 -> v2:
>> 	* show number of HighTotal before hotremove
>> 	* remove CONFIG_HIGHMEM
>> 	* cc stable kernels
>> 	* add Michal reviewed-by
>>
>> Logic memory-remove code fails to correctly account the Total High Memory
>> when a memory block which contains High Memory is offlined as shown in the
>> example below. The following patch fixes it.
>>
>> Stable for 2.6.24+.
>>
>> Before logic memory remove:
>>
>> MemTotal:        7603740 kB
>> MemFree:         6329612 kB
>> Buffers:           94352 kB
>> Cached:           872008 kB
>> SwapCached:            0 kB
>> Active:           626932 kB
>> Inactive:         519216 kB
>> Active(anon):     180776 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296272 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5704696 kB
>> LowTotal:         309068 kB
>> LowFree:          624916 kB
>>
>> After logic memory remove:
>>
>> MemTotal:        7079452 kB
>> MemFree:         5805976 kB
>> Buffers:           94372 kB
>> Cached:           872000 kB
>> SwapCached:            0 kB
>> Active:           626936 kB
>> Inactive:         519236 kB
>> Active(anon):     180780 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296292 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5181024 kB
>> LowTotal:       4294752076 kB
>> LowFree:          624952 kB
>>
>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  mm/page_alloc.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>> index 98cbdf6..23b921f 100644
>> --- a/mm/page_alloc.c
>> +++ b/mm/page_alloc.c
>> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>>  		list_del(&page->lru);
>>  		rmv_page_order(page);
>>  		zone->free_area[order].nr_free--;
>> +		if (PageHighMem(page))
>> +			totalhigh_pages -= 1 << order;
>>  		for (i = 0; i < (1 << order); i++)
>>  			SetPageReserved((page+i));
>>  		pfn += (1 << order);
>
>Hi Wanpeng,
>         The memory hotplug code adjusts totalram_pages, 
>totalhigh_pages,  zone->present_pages
>and zone->managed_pages all in memory_hotplug.c, so suggest to move 
>this into memory_hotplug.c
>too.
>          One of my patch fixes this issue in another way, please refer 
>to:
>http://marc.info/?l=linux-mm&m=136957578620221&w=2

Greate to see your effort. ;-)

>Regards!
>Gerry

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 18:12         ` Michal Hocko
  (?)
@ 2013-05-26 23:51         ` Wanpeng Li
  2013-05-27  6:48             ` Michal Hocko
  -1 siblings, 1 reply; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26 23:51 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 08:12:09PM +0200, Michal Hocko wrote:
>On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
>> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
>> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
>> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
>> >> it was born, 
>> >
>> >Why? any reference? This reasoning is really weak.
>> >
>> 
>> http://marc.info/?l=linux-mm&m=136953099010171&w=2
>
>I have seen the email but that email just states that the feature is
>broken. Maybe it is obvious to you _what_ is actually broken but it
>doesn't need to be others especially those who would be reading such
>changelog later. So if you consider this configuration broken then be
>specific what is broken.
>

Sorry for the not enough information. KOSAKI explain more here:
http://marc.info/?l=linux-mm&m=136958040921274&w=2 

>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 18:12         ` Michal Hocko
  (?)
  (?)
@ 2013-05-26 23:51         ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-26 23:51 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 08:12:09PM +0200, Michal Hocko wrote:
>On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
>> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
>> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
>> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
>> >> it was born, 
>> >
>> >Why? any reference? This reasoning is really weak.
>> >
>> 
>> http://marc.info/?l=linux-mm&m=136953099010171&w=2
>
>I have seen the email but that email just states that the feature is
>broken. Maybe it is obvious to you _what_ is actually broken but it
>doesn't need to be others especially those who would be reading such
>changelog later. So if you consider this configuration broken then be
>specific what is broken.
>

Sorry for the not enough information. KOSAKI explain more here:
http://marc.info/?l=linux-mm&m=136958040921274&w=2 

>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26 11:49   ` KOSAKI Motohiro
  (?)
@ 2013-05-27  0:02   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-27  0:02 UTC (permalink / raw)
  To: KOSAKI Motohiro
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 07:49:33AM -0400, KOSAKI Motohiro wrote:
>On Sun, May 26, 2013 at 1:58 AM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
>> Changelog:
>>  v1 -> v2:
>>         * show number of HighTotal before hotremove
>>         * remove CONFIG_HIGHMEM
>>         * cc stable kernels
>>         * add Michal reviewed-by
>>
>> Logic memory-remove code fails to correctly account the Total High Memory
>> when a memory block which contains High Memory is offlined as shown in the
>> example below. The following patch fixes it.
>>
>> Stable for 2.6.24+.
>>
>> Before logic memory remove:
>>
>> MemTotal:        7603740 kB
>> MemFree:         6329612 kB
>> Buffers:           94352 kB
>> Cached:           872008 kB
>> SwapCached:            0 kB
>> Active:           626932 kB
>> Inactive:         519216 kB
>> Active(anon):     180776 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296272 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5704696 kB
>> LowTotal:         309068 kB
>> LowFree:          624916 kB
>>
>> After logic memory remove:
>>
>> MemTotal:        7079452 kB
>> MemFree:         5805976 kB
>> Buffers:           94372 kB
>> Cached:           872000 kB
>> SwapCached:            0 kB
>> Active:           626936 kB
>> Inactive:         519236 kB
>> Active(anon):     180780 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296292 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5181024 kB
>> LowTotal:       4294752076 kB
>> LowFree:          624952 kB
>>
>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  mm/page_alloc.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>> index 98cbdf6..23b921f 100644
>> --- a/mm/page_alloc.c
>> +++ b/mm/page_alloc.c
>> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>>                 list_del(&page->lru);
>>                 rmv_page_order(page);
>>                 zone->free_area[order].nr_free--;
>> +               if (PageHighMem(page))
>> +                       totalhigh_pages -= 1 << order;
>>                 for (i = 0; i < (1 << order); i++)
>>                         SetPageReserved((page+i));
>>                 pfn += (1 << order);
>
>Hm. I already NAKed and you didn't answered my question. isn't it?

Jiang makes his effort to support highmem for memory hotremove, he also
fix this bug, http://marc.info/?l=linux-mm&m=136957578620221&w=2

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26 11:49   ` KOSAKI Motohiro
  (?)
  (?)
@ 2013-05-27  0:02   ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-27  0:02 UTC (permalink / raw)
  To: KOSAKI Motohiro
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, David Rientjes,
	Jiang Liu, Tang Chen, linux-mm, LKML, Greg Kroah-Hartman, stable

On Sun, May 26, 2013 at 07:49:33AM -0400, KOSAKI Motohiro wrote:
>On Sun, May 26, 2013 at 1:58 AM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
>> Changelog:
>>  v1 -> v2:
>>         * show number of HighTotal before hotremove
>>         * remove CONFIG_HIGHMEM
>>         * cc stable kernels
>>         * add Michal reviewed-by
>>
>> Logic memory-remove code fails to correctly account the Total High Memory
>> when a memory block which contains High Memory is offlined as shown in the
>> example below. The following patch fixes it.
>>
>> Stable for 2.6.24+.
>>
>> Before logic memory remove:
>>
>> MemTotal:        7603740 kB
>> MemFree:         6329612 kB
>> Buffers:           94352 kB
>> Cached:           872008 kB
>> SwapCached:            0 kB
>> Active:           626932 kB
>> Inactive:         519216 kB
>> Active(anon):     180776 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296272 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5704696 kB
>> LowTotal:         309068 kB
>> LowFree:          624916 kB
>>
>> After logic memory remove:
>>
>> MemTotal:        7079452 kB
>> MemFree:         5805976 kB
>> Buffers:           94372 kB
>> Cached:           872000 kB
>> SwapCached:            0 kB
>> Active:           626936 kB
>> Inactive:         519236 kB
>> Active(anon):     180780 kB
>> Inactive(anon):   222944 kB
>> Active(file):     446156 kB
>> Inactive(file):   296292 kB
>> Unevictable:           0 kB
>> Mlocked:               0 kB
>> HighTotal:       7294672 kB
>> HighFree:        5181024 kB
>> LowTotal:       4294752076 kB
>> LowFree:          624952 kB
>>
>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>>  mm/page_alloc.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>> index 98cbdf6..23b921f 100644
>> --- a/mm/page_alloc.c
>> +++ b/mm/page_alloc.c
>> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>>                 list_del(&page->lru);
>>                 rmv_page_order(page);
>>                 zone->free_area[order].nr_free--;
>> +               if (PageHighMem(page))
>> +                       totalhigh_pages -= 1 << order;
>>                 for (i = 0; i < (1 << order); i++)
>>                         SetPageReserved((page+i));
>>                 pfn += (1 << order);
>
>Hm. I already NAKed and you didn't answered my question. isn't it?

Jiang makes his effort to support highmem for memory hotremove, he also
fix this bug, http://marc.info/?l=linux-mm&m=136957578620221&w=2

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
       [not found]   ` <51a2a2ab.a2f6420a.33bb.ffffda23SMTPIN_ADDED_BROKEN@mx.google.com>
@ 2013-05-27  6:42       ` KOSAKI Motohiro
  0 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-27  6:42 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: KOSAKI Motohiro, Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

(5/26/13 8:02 PM), Wanpeng Li wrote:
> On Sun, May 26, 2013 at 07:49:33AM -0400, KOSAKI Motohiro wrote:
>> On Sun, May 26, 2013 at 1:58 AM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
>>> Changelog:
>>>  v1 -> v2:
>>>         * show number of HighTotal before hotremove
>>>         * remove CONFIG_HIGHMEM
>>>         * cc stable kernels
>>>         * add Michal reviewed-by
>>>
>>> Logic memory-remove code fails to correctly account the Total High Memory
>>> when a memory block which contains High Memory is offlined as shown in the
>>> example below. The following patch fixes it.
>>>
>>> Stable for 2.6.24+.
>>>
>>> Before logic memory remove:
>>>
>>> MemTotal:        7603740 kB
>>> MemFree:         6329612 kB
>>> Buffers:           94352 kB
>>> Cached:           872008 kB
>>> SwapCached:            0 kB
>>> Active:           626932 kB
>>> Inactive:         519216 kB
>>> Active(anon):     180776 kB
>>> Inactive(anon):   222944 kB
>>> Active(file):     446156 kB
>>> Inactive(file):   296272 kB
>>> Unevictable:           0 kB
>>> Mlocked:               0 kB
>>> HighTotal:       7294672 kB
>>> HighFree:        5704696 kB
>>> LowTotal:         309068 kB
>>> LowFree:          624916 kB
>>>
>>> After logic memory remove:
>>>
>>> MemTotal:        7079452 kB
>>> MemFree:         5805976 kB
>>> Buffers:           94372 kB
>>> Cached:           872000 kB
>>> SwapCached:            0 kB
>>> Active:           626936 kB
>>> Inactive:         519236 kB
>>> Active(anon):     180780 kB
>>> Inactive(anon):   222944 kB
>>> Active(file):     446156 kB
>>> Inactive(file):   296292 kB
>>> Unevictable:           0 kB
>>> Mlocked:               0 kB
>>> HighTotal:       7294672 kB
>>> HighFree:        5181024 kB
>>> LowTotal:       4294752076 kB
>>> LowFree:          624952 kB
>>>
>>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>>> ---
>>>  mm/page_alloc.c | 2 ++
>>>  1 file changed, 2 insertions(+)
>>>
>>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>>> index 98cbdf6..23b921f 100644
>>> --- a/mm/page_alloc.c
>>> +++ b/mm/page_alloc.c
>>> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>>>                 list_del(&page->lru);
>>>                 rmv_page_order(page);
>>>                 zone->free_area[order].nr_free--;
>>> +               if (PageHighMem(page))
>>> +                       totalhigh_pages -= 1 << order;
>>>                 for (i = 0; i < (1 << order); i++)
>>>                         SetPageReserved((page+i));
>>>                 pfn += (1 << order);
>>
>> Hm. I already NAKed and you didn't answered my question. isn't it?
> 
> Jiang makes his effort to support highmem for memory hotremove, he also
> fix this bug, http://marc.info/?l=linux-mm&m=136957578620221&w=2

OK, go ahead.






^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
@ 2013-05-27  6:42       ` KOSAKI Motohiro
  0 siblings, 0 replies; 53+ messages in thread
From: KOSAKI Motohiro @ 2013-05-27  6:42 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: KOSAKI Motohiro, Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, LKML,
	Greg Kroah-Hartman, stable

(5/26/13 8:02 PM), Wanpeng Li wrote:
> On Sun, May 26, 2013 at 07:49:33AM -0400, KOSAKI Motohiro wrote:
>> On Sun, May 26, 2013 at 1:58 AM, Wanpeng Li <liwanp@linux.vnet.ibm.com> wrote:
>>> Changelog:
>>>  v1 -> v2:
>>>         * show number of HighTotal before hotremove
>>>         * remove CONFIG_HIGHMEM
>>>         * cc stable kernels
>>>         * add Michal reviewed-by
>>>
>>> Logic memory-remove code fails to correctly account the Total High Memory
>>> when a memory block which contains High Memory is offlined as shown in the
>>> example below. The following patch fixes it.
>>>
>>> Stable for 2.6.24+.
>>>
>>> Before logic memory remove:
>>>
>>> MemTotal:        7603740 kB
>>> MemFree:         6329612 kB
>>> Buffers:           94352 kB
>>> Cached:           872008 kB
>>> SwapCached:            0 kB
>>> Active:           626932 kB
>>> Inactive:         519216 kB
>>> Active(anon):     180776 kB
>>> Inactive(anon):   222944 kB
>>> Active(file):     446156 kB
>>> Inactive(file):   296272 kB
>>> Unevictable:           0 kB
>>> Mlocked:               0 kB
>>> HighTotal:       7294672 kB
>>> HighFree:        5704696 kB
>>> LowTotal:         309068 kB
>>> LowFree:          624916 kB
>>>
>>> After logic memory remove:
>>>
>>> MemTotal:        7079452 kB
>>> MemFree:         5805976 kB
>>> Buffers:           94372 kB
>>> Cached:           872000 kB
>>> SwapCached:            0 kB
>>> Active:           626936 kB
>>> Inactive:         519236 kB
>>> Active(anon):     180780 kB
>>> Inactive(anon):   222944 kB
>>> Active(file):     446156 kB
>>> Inactive(file):   296292 kB
>>> Unevictable:           0 kB
>>> Mlocked:               0 kB
>>> HighTotal:       7294672 kB
>>> HighFree:        5181024 kB
>>> LowTotal:       4294752076 kB
>>> LowFree:          624952 kB
>>>
>>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>>> ---
>>>  mm/page_alloc.c | 2 ++
>>>  1 file changed, 2 insertions(+)
>>>
>>> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
>>> index 98cbdf6..23b921f 100644
>>> --- a/mm/page_alloc.c
>>> +++ b/mm/page_alloc.c
>>> @@ -6140,6 +6140,8 @@ __offline_isolated_pages(unsigned long start_pfn, unsigned long end_pfn)
>>>                 list_del(&page->lru);
>>>                 rmv_page_order(page);
>>>                 zone->free_area[order].nr_free--;
>>> +               if (PageHighMem(page))
>>> +                       totalhigh_pages -= 1 << order;
>>>                 for (i = 0; i < (1 << order); i++)
>>>                         SetPageReserved((page+i));
>>>                 pfn += (1 << order);
>>
>> Hm. I already NAKed and you didn't answered my question. isn't it?
> 
> Jiang makes his effort to support highmem for memory hotremove, he also
> fix this bug, http://marc.info/?l=linux-mm&m=136957578620221&w=2

OK, go ahead.





--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-26 23:51         ` Wanpeng Li
@ 2013-05-27  6:48             ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-27  6:48 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Mon 27-05-13 07:51:38, Wanpeng Li wrote:
> On Sun, May 26, 2013 at 08:12:09PM +0200, Michal Hocko wrote:
> >On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
> >> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
> >> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
> >> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
> >> >> it was born, 
> >> >
> >> >Why? any reference? This reasoning is really weak.
> >> >
> >> 
> >> http://marc.info/?l=linux-mm&m=136953099010171&w=2
> >
> >I have seen the email but that email just states that the feature is
> >broken. Maybe it is obvious to you _what_ is actually broken but it
> >doesn't need to be others especially those who would be reading such
> >changelog later. So if you consider this configuration broken then be
> >specific what is broken.
> >
> 
> Sorry for the not enough information. KOSAKI explain more here:
> http://marc.info/?l=linux-mm&m=136958040921274&w=2 

There are still just general claims that _something_ is not highmem
aware.

Anyway, as it seems that there are some attempts to revive this code
then this discussion is moot. But, just for the future, make sure you
are really specific when you claim that something is broken. Somebody
said it was broken is _not_ a reasoning that would fly.

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
@ 2013-05-27  6:48             ` Michal Hocko
  0 siblings, 0 replies; 53+ messages in thread
From: Michal Hocko @ 2013-05-27  6:48 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Mon 27-05-13 07:51:38, Wanpeng Li wrote:
> On Sun, May 26, 2013 at 08:12:09PM +0200, Michal Hocko wrote:
> >On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
> >> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
> >> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
> >> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
> >> >> it was born, 
> >> >
> >> >Why? any reference? This reasoning is really weak.
> >> >
> >> 
> >> http://marc.info/?l=linux-mm&m=136953099010171&w=2
> >
> >I have seen the email but that email just states that the feature is
> >broken. Maybe it is obvious to you _what_ is actually broken but it
> >doesn't need to be others especially those who would be reading such
> >changelog later. So if you consider this configuration broken then be
> >specific what is broken.
> >
> 
> Sorry for the not enough information. KOSAKI explain more here:
> http://marc.info/?l=linux-mm&m=136958040921274&w=2 

There are still just general claims that _something_ is not highmem
aware.

Anyway, as it seems that there are some attempts to revive this code
then this discussion is moot. But, just for the future, make sure you
are really specific when you claim that something is broken. Somebody
said it was broken is _not_ a reasoning that would fly.

-- 
Michal Hocko
SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-27  6:48             ` Michal Hocko
  (?)
@ 2013-05-27  7:00             ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-27  7:00 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Andrew Morton, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Mon, May 27, 2013 at 08:48:27AM +0200, Michal Hocko wrote:
>On Mon 27-05-13 07:51:38, Wanpeng Li wrote:
>> On Sun, May 26, 2013 at 08:12:09PM +0200, Michal Hocko wrote:
>> >On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
>> >> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
>> >> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
>> >> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
>> >> >> it was born, 
>> >> >
>> >> >Why? any reference? This reasoning is really weak.
>> >> >
>> >> 
>> >> http://marc.info/?l=linux-mm&m=136953099010171&w=2
>> >
>> >I have seen the email but that email just states that the feature is
>> >broken. Maybe it is obvious to you _what_ is actually broken but it
>> >doesn't need to be others especially those who would be reading such
>> >changelog later. So if you consider this configuration broken then be
>> >specific what is broken.
>> >
>> 
>> Sorry for the not enough information. KOSAKI explain more here:
>> http://marc.info/?l=linux-mm&m=136958040921274&w=2 
>
>There are still just general claims that _something_ is not highmem
>aware.
>
>Anyway, as it seems that there are some attempts to revive this code
>then this discussion is moot. But, just for the future, make sure you
>are really specific when you claim that something is broken. Somebody
>said it was broken is _not_ a reasoning that would fly.
>

Got it, thanks Michal. ;-)

>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit
  2013-05-27  6:48             ` Michal Hocko
  (?)
  (?)
@ 2013-05-27  7:00             ` Wanpeng Li
  -1 siblings, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-27  7:00 UTC (permalink / raw)
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Mon, May 27, 2013 at 08:48:27AM +0200, Michal Hocko wrote:
>On Mon 27-05-13 07:51:38, Wanpeng Li wrote:
>> On Sun, May 26, 2013 at 08:12:09PM +0200, Michal Hocko wrote:
>> >On Sun 26-05-13 17:06:17, Wanpeng Li wrote:
>> >> On Sun, May 26, 2013 at 11:00:54AM +0200, Michal Hocko wrote:
>> >> >On Sun 26-05-13 13:58:38, Wanpeng Li wrote:
>> >> >> As KOSAKI Motohiro mentioned, memory hotplug don't support 32bit since 
>> >> >> it was born, 
>> >> >
>> >> >Why? any reference? This reasoning is really weak.
>> >> >
>> >> 
>> >> http://marc.info/?l=linux-mm&m=136953099010171&w=2
>> >
>> >I have seen the email but that email just states that the feature is
>> >broken. Maybe it is obvious to you _what_ is actually broken but it
>> >doesn't need to be others especially those who would be reading such
>> >changelog later. So if you consider this configuration broken then be
>> >specific what is broken.
>> >
>> 
>> Sorry for the not enough information. KOSAKI explain more here:
>> http://marc.info/?l=linux-mm&m=136958040921274&w=2 
>
>There are still just general claims that _something_ is not highmem
>aware.
>
>Anyway, as it seems that there are some attempts to revive this code
>then this discussion is moot. But, just for the future, make sure you
>are really specific when you claim that something is broken. Somebody
>said it was broken is _not_ a reasoning that would fly.
>

Got it, thanks Michal. ;-)

>-- 
>Michal Hocko
>SUSE Labs

--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-26  5:58 ` Wanpeng Li
                   ` (7 preceding siblings ...)
  (?)
@ 2013-05-28  3:37 ` Ben Hutchings
  2013-05-28  7:16   ` Wanpeng Li
  2013-05-28  7:16   ` Wanpeng Li
  -1 siblings, 2 replies; 53+ messages in thread
From: Ben Hutchings @ 2013-05-28  3:37 UTC (permalink / raw)
  To: Wanpeng Li
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

[-- Attachment #1: Type: text/plain, Size: 767 bytes --]

On Sun, 2013-05-26 at 13:58 +0800, Wanpeng Li wrote:
> Changelog:
>  v1 -> v2:
> 	* show number of HighTotal before hotremove 
> 	* remove CONFIG_HIGHMEM
> 	* cc stable kernels
> 	* add Michal reviewed-by
> 
> Logic memory-remove code fails to correctly account the Total High Memory 
> when a memory block which contains High Memory is offlined as shown in the
> example below. The following patch fixes it.
> 
> Stable for 2.6.24+.
[...]
> Reviewed-by: Michal Hocko <mhocko@suse.cz>
> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
> ---
[...]

This is not the correct way to request changes for stable.  See
Documentation/stable_kernel_rules.txt

Ben.

-- 
Ben Hutchings
If at first you don't succeed, you're doing about average.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 828 bytes --]

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-28  3:37 ` Ben Hutchings
@ 2013-05-28  7:16   ` Wanpeng Li
  2013-05-28  7:16   ` Wanpeng Li
  1 sibling, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-28  7:16 UTC (permalink / raw)
  To: Ben Hutchings
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Tue, May 28, 2013 at 04:37:33AM +0100, Ben Hutchings wrote:
>On Sun, 2013-05-26 at 13:58 +0800, Wanpeng Li wrote:
>> Changelog:
>>  v1 -> v2:
>> 	* show number of HighTotal before hotremove 
>> 	* remove CONFIG_HIGHMEM
>> 	* cc stable kernels
>> 	* add Michal reviewed-by
>> 
>> Logic memory-remove code fails to correctly account the Total High Memory 
>> when a memory block which contains High Memory is offlined as shown in the
>> example below. The following patch fixes it.
>> 
>> Stable for 2.6.24+.
>[...]
>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>[...]
>
>This is not the correct way to request changes for stable.  See
>Documentation/stable_kernel_rules.txt

Ok, I will resend it. 

>
>Ben.
>
>-- 
>Ben Hutchings
>If at first you don't succeed, you're doing about average.


--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

* Re: [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages
  2013-05-28  3:37 ` Ben Hutchings
  2013-05-28  7:16   ` Wanpeng Li
@ 2013-05-28  7:16   ` Wanpeng Li
  1 sibling, 0 replies; 53+ messages in thread
From: Wanpeng Li @ 2013-05-28  7:16 UTC (permalink / raw)
  To: Ben Hutchings
  Cc: Andrew Morton, Michal Hocko, KAMEZAWA Hiroyuki, KOSAKI Motohiro,
	David Rientjes, Jiang Liu, Tang Chen, linux-mm, linux-kernel,
	Greg Kroah-Hartman, stable

On Tue, May 28, 2013 at 04:37:33AM +0100, Ben Hutchings wrote:
>On Sun, 2013-05-26 at 13:58 +0800, Wanpeng Li wrote:
>> Changelog:
>>  v1 -> v2:
>> 	* show number of HighTotal before hotremove 
>> 	* remove CONFIG_HIGHMEM
>> 	* cc stable kernels
>> 	* add Michal reviewed-by
>> 
>> Logic memory-remove code fails to correctly account the Total High Memory 
>> when a memory block which contains High Memory is offlined as shown in the
>> example below. The following patch fixes it.
>> 
>> Stable for 2.6.24+.
>[...]
>> Reviewed-by: Michal Hocko <mhocko@suse.cz>
>> Signed-off-by: Wanpeng Li <liwanp@linux.vnet.ibm.com>
>> ---
>[...]
>
>This is not the correct way to request changes for stable.  See
>Documentation/stable_kernel_rules.txt

Ok, I will resend it. 

>
>Ben.
>
>-- 
>Ben Hutchings
>If at first you don't succeed, you're doing about average.


--
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>

^ permalink raw reply	[flat|nested] 53+ messages in thread

end of thread, other threads:[~2013-05-28  7:16 UTC | newest]

Thread overview: 53+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-26  5:58 [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages Wanpeng Li
2013-05-26  5:58 ` Wanpeng Li
2013-05-26  5:58 ` [PATCH v3 2/6] mm/memory_hotplug: remove memory_add_physaddr_to_nid Wanpeng Li
2013-05-26  5:58   ` Wanpeng Li
2013-05-26  8:59   ` Michal Hocko
2013-05-26  8:59     ` Michal Hocko
2013-05-26  9:03     ` Wanpeng Li
2013-05-26  9:03     ` Wanpeng Li
2013-05-26  5:58 ` [patch v2 3/6] mm/memory_hotplug: Disable memory hotremove for 32bit Wanpeng Li
2013-05-26  5:58   ` Wanpeng Li
2013-05-26  9:00   ` Michal Hocko
2013-05-26  9:00     ` Michal Hocko
2013-05-26  9:06     ` Wanpeng Li
2013-05-26 18:12       ` Michal Hocko
2013-05-26 18:12         ` Michal Hocko
2013-05-26 23:51         ` Wanpeng Li
2013-05-27  6:48           ` Michal Hocko
2013-05-27  6:48             ` Michal Hocko
2013-05-27  7:00             ` Wanpeng Li
2013-05-27  7:00             ` Wanpeng Li
2013-05-26 23:51         ` Wanpeng Li
2013-05-26  9:06     ` Wanpeng Li
2013-05-26 11:58     ` KOSAKI Motohiro
2013-05-26 11:58       ` KOSAKI Motohiro
2013-05-26 12:45       ` Hush Bensen
2013-05-26 12:45         ` Hush Bensen
2013-05-26 13:06         ` KOSAKI Motohiro
2013-05-26 13:06           ` KOSAKI Motohiro
2013-05-26 13:49           ` Hush Bensen
2013-05-26 13:49             ` Hush Bensen
2013-05-26 18:09       ` Michal Hocko
2013-05-26 18:09         ` Michal Hocko
2013-05-26 22:02         ` KOSAKI Motohiro
2013-05-26 22:02           ` KOSAKI Motohiro
2013-05-26  5:58 ` [PATCH v3 4/6] mm/hugetlb: use already exist interface huge_page_shift Wanpeng Li
2013-05-26  5:58   ` Wanpeng Li
2013-05-26  5:58 ` [PATCH v3 5/6] mm/pageblock: remove get/set_pageblock_flags Wanpeng Li
2013-05-26  5:58   ` Wanpeng Li
2013-05-26  5:58 ` [PATCH v3 6/6] mm/hugetlb: remove hugetlb_prefault Wanpeng Li
2013-05-26  5:58   ` Wanpeng Li
2013-05-26 11:49 ` [PATCH v3 1/6] mm/memory-hotplug: fix lowmem count overflow when offline pages KOSAKI Motohiro
2013-05-26 11:49   ` KOSAKI Motohiro
2013-05-27  0:02   ` Wanpeng Li
2013-05-27  0:02   ` Wanpeng Li
     [not found]   ` <51a2a2ab.a2f6420a.33bb.ffffda23SMTPIN_ADDED_BROKEN@mx.google.com>
2013-05-27  6:42     ` KOSAKI Motohiro
2013-05-27  6:42       ` KOSAKI Motohiro
2013-05-26 14:26 ` Liu Jiang
2013-05-26 14:26   ` Liu Jiang
2013-05-26 23:44   ` Wanpeng Li
2013-05-26 23:44   ` Wanpeng Li
2013-05-28  3:37 ` Ben Hutchings
2013-05-28  7:16   ` Wanpeng Li
2013-05-28  7:16   ` Wanpeng Li

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.