All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Mike Galbraith <efault@gmx.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Andy Lutomirski <luto@amacapital.net>,
	Borislav Petkov <bp@suse.de>,
	Cyrill Gorcunov <gorcunov@openvz.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-mm@kvack.org
Subject: Re: [PATCH 4.14 023/159] mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
Date: Mon, 8 Jan 2018 17:04:44 +0100	[thread overview]
Message-ID: <20180108160444.2ol4fvgqbxnjmlpg@gmail.com> (raw)
In-Reply-To: <1515302062.6507.18.camel@gmx.de>


hi Kirill,

As Mike reported it below, your 5-level paging related upstream commit 
83e3c48729d9 and all its followup fixes:

 83e3c48729d9: mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
 629a359bdb0e: mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
 d09cfbbfa0f7: mm/sparse.c: wrong allocation for mem_section

... still breaks kexec - and that now regresses -stable as well.

Given that 5-level paging now syntactically depends on having this commit, if we 
fully revert this then we'll have to disable 5-level paging as well.

Thanks,

	Ingo

* Mike Galbraith <efault@gmx.de> wrote:

> On Fri, 2017-12-22 at 09:45 +0100, Greg Kroah-Hartman wrote:
> > 4.14-stable review patch.  If anyone has any objections, please let me know.
> 
> FYI, this broke kdump, or rather the makedumpfile part thereof.
>  Forward looking wreckage is par for the kdump course, but...
> 
> > ------------------
> > 
> > From: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > 
> > commit 83e3c48729d9ebb7af5a31a504f3fd6aff0348c4 upstream.
> > 
> > Size of the mem_section[] array depends on the size of the physical address space.
> > 
> > In preparation for boot-time switching between paging modes on x86-64
> > we need to make the allocation of mem_section[] dynamic, because otherwise
> > we waste a lot of RAM: with CONFIG_NODE_SHIFT=10, mem_section[] size is 32kB
> > for 4-level paging and 2MB for 5-level paging mode.
> > 
> > The patch allocates the array on the first call to sparse_memory_present_with_active_regions().
> > 
> > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > Cc: Andrew Morton <akpm@linux-foundation.org>
> > Cc: Andy Lutomirski <luto@amacapital.net>
> > Cc: Borislav Petkov <bp@suse.de>
> > Cc: Cyrill Gorcunov <gorcunov@openvz.org>
> > Cc: Linus Torvalds <torvalds@linux-foundation.org>
> > Cc: Peter Zijlstra <peterz@infradead.org>
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > Cc: linux-mm@kvack.org
> > Link: http://lkml.kernel.org/r/20170929140821.37654-2-kirill.shutemov@linux.intel.com
> > Signed-off-by: Ingo Molnar <mingo@kernel.org>
> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > 
> > ---
> >  include/linux/mmzone.h |    6 +++++-
> >  mm/page_alloc.c        |   10 ++++++++++
> >  mm/sparse.c            |   17 +++++++++++------
> >  3 files changed, 26 insertions(+), 7 deletions(-)
> > 
> > --- a/include/linux/mmzone.h
> > +++ b/include/linux/mmzone.h
> > @@ -1152,13 +1152,17 @@ struct mem_section {
> >  #define SECTION_ROOT_MASK	(SECTIONS_PER_ROOT - 1)
> >  
> >  #ifdef CONFIG_SPARSEMEM_EXTREME
> > -extern struct mem_section *mem_section[NR_SECTION_ROOTS];
> > +extern struct mem_section **mem_section;
> >  #else
> >  extern struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT];
> >  #endif
> >  
> >  static inline struct mem_section *__nr_to_section(unsigned long nr)
> >  {
> > +#ifdef CONFIG_SPARSEMEM_EXTREME
> > +	if (!mem_section)
> > +		return NULL;
> > +#endif
> >  	if (!mem_section[SECTION_NR_TO_ROOT(nr)])
> >  		return NULL;
> >  	return &mem_section[SECTION_NR_TO_ROOT(nr)][nr & SECTION_ROOT_MASK];
> > --- a/mm/page_alloc.c
> > +++ b/mm/page_alloc.c
> > @@ -5651,6 +5651,16 @@ void __init sparse_memory_present_with_a
> >  	unsigned long start_pfn, end_pfn;
> >  	int i, this_nid;
> >  
> > +#ifdef CONFIG_SPARSEMEM_EXTREME
> > +	if (!mem_section) {
> > +		unsigned long size, align;
> > +
> > +		size = sizeof(struct mem_section) * NR_SECTION_ROOTS;
> > +		align = 1 << (INTERNODE_CACHE_SHIFT);
> > +		mem_section = memblock_virt_alloc(size, align);
> > +	}
> > +#endif
> > +
> >  	for_each_mem_pfn_range(i, nid, &start_pfn, &end_pfn, &this_nid)
> >  		memory_present(this_nid, start_pfn, end_pfn);
> >  }
> > --- a/mm/sparse.c
> > +++ b/mm/sparse.c
> > @@ -23,8 +23,7 @@
> >   * 1) mem_section	- memory sections, mem_map's for valid memory
> >   */
> >  #ifdef CONFIG_SPARSEMEM_EXTREME
> > -struct mem_section *mem_section[NR_SECTION_ROOTS]
> > -	____cacheline_internodealigned_in_smp;
> > +struct mem_section **mem_section;
> >  #else
> >  struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT]
> >  	____cacheline_internodealigned_in_smp;
> > @@ -101,7 +100,7 @@ static inline int sparse_index_init(unsi
> >  int __section_nr(struct mem_section* ms)
> >  {
> >  	unsigned long root_nr;
> > -	struct mem_section* root;
> > +	struct mem_section *root = NULL;
> >  
> >  	for (root_nr = 0; root_nr < NR_SECTION_ROOTS; root_nr++) {
> >  		root = __nr_to_section(root_nr * SECTIONS_PER_ROOT);
> > @@ -112,7 +111,7 @@ int __section_nr(struct mem_section* ms)
> >  		     break;
> >  	}
> >  
> > -	VM_BUG_ON(root_nr == NR_SECTION_ROOTS);
> > +	VM_BUG_ON(!root);
> >  
> >  	return (root_nr * SECTIONS_PER_ROOT) + (ms - root);
> >  }
> > @@ -330,11 +329,17 @@ again:
> >  static void __init check_usemap_section_nr(int nid, unsigned long *usemap)
> >  {
> >  	unsigned long usemap_snr, pgdat_snr;
> > -	static unsigned long old_usemap_snr = NR_MEM_SECTIONS;
> > -	static unsigned long old_pgdat_snr = NR_MEM_SECTIONS;
> > +	static unsigned long old_usemap_snr;
> > +	static unsigned long old_pgdat_snr;
> >  	struct pglist_data *pgdat = NODE_DATA(nid);
> >  	int usemap_nid;
> >  
> > +	/* First call */
> > +	if (!old_usemap_snr) {
> > +		old_usemap_snr = NR_MEM_SECTIONS;
> > +		old_pgdat_snr = NR_MEM_SECTIONS;
> > +	}
> > +
> >  	usemap_snr = pfn_to_section_nr(__pa(usemap) >> PAGE_SHIFT);
> >  	pgdat_snr = pfn_to_section_nr(__pa(pgdat) >> PAGE_SHIFT);
> >  	if (usemap_snr == pgdat_snr)
> > 
> > 

WARNING: multiple messages have this Message-ID (diff)
From: Ingo Molnar <mingo@kernel.org>
To: Mike Galbraith <efault@gmx.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Andy Lutomirski <luto@amacapital.net>,
	Borislav Petkov <bp@suse.de>,
	Cyrill Gorcunov <gorcunov@openvz.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-mm@kvack.org
Subject: Re: [PATCH 4.14 023/159] mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
Date: Mon, 8 Jan 2018 17:04:44 +0100	[thread overview]
Message-ID: <20180108160444.2ol4fvgqbxnjmlpg@gmail.com> (raw)
In-Reply-To: <1515302062.6507.18.camel@gmx.de>


hi Kirill,

As Mike reported it below, your 5-level paging related upstream commit 
83e3c48729d9 and all its followup fixes:

 83e3c48729d9: mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
 629a359bdb0e: mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
 d09cfbbfa0f7: mm/sparse.c: wrong allocation for mem_section

... still breaks kexec - and that now regresses -stable as well.

Given that 5-level paging now syntactically depends on having this commit, if we 
fully revert this then we'll have to disable 5-level paging as well.

Thanks,

	Ingo

* Mike Galbraith <efault@gmx.de> wrote:

> On Fri, 2017-12-22 at 09:45 +0100, Greg Kroah-Hartman wrote:
> > 4.14-stable review patch.  If anyone has any objections, please let me know.
> 
> FYI, this broke kdump, or rather the makedumpfile part thereof.
> �Forward looking wreckage is par for the kdump course, but...
> 
> > ------------------
> > 
> > From: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > 
> > commit 83e3c48729d9ebb7af5a31a504f3fd6aff0348c4 upstream.
> > 
> > Size of the mem_section[] array depends on the size of the physical address space.
> > 
> > In preparation for boot-time switching between paging modes on x86-64
> > we need to make the allocation of mem_section[] dynamic, because otherwise
> > we waste a lot of RAM: with CONFIG_NODE_SHIFT=10, mem_section[] size is 32kB
> > for 4-level paging and 2MB for 5-level paging mode.
> > 
> > The patch allocates the array on the first call to sparse_memory_present_with_active_regions().
> > 
> > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > Cc: Andrew Morton <akpm@linux-foundation.org>
> > Cc: Andy Lutomirski <luto@amacapital.net>
> > Cc: Borislav Petkov <bp@suse.de>
> > Cc: Cyrill Gorcunov <gorcunov@openvz.org>
> > Cc: Linus Torvalds <torvalds@linux-foundation.org>
> > Cc: Peter Zijlstra <peterz@infradead.org>
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > Cc: linux-mm@kvack.org
> > Link: http://lkml.kernel.org/r/20170929140821.37654-2-kirill.shutemov@linux.intel.com
> > Signed-off-by: Ingo Molnar <mingo@kernel.org>
> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > 
> > ---
> >  include/linux/mmzone.h |    6 +++++-
> >  mm/page_alloc.c        |   10 ++++++++++
> >  mm/sparse.c            |   17 +++++++++++------
> >  3 files changed, 26 insertions(+), 7 deletions(-)
> > 
> > --- a/include/linux/mmzone.h
> > +++ b/include/linux/mmzone.h
> > @@ -1152,13 +1152,17 @@ struct mem_section {
> >  #define SECTION_ROOT_MASK	(SECTIONS_PER_ROOT - 1)
> >  
> >  #ifdef CONFIG_SPARSEMEM_EXTREME
> > -extern struct mem_section *mem_section[NR_SECTION_ROOTS];
> > +extern struct mem_section **mem_section;
> >  #else
> >  extern struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT];
> >  #endif
> >  
> >  static inline struct mem_section *__nr_to_section(unsigned long nr)
> >  {
> > +#ifdef CONFIG_SPARSEMEM_EXTREME
> > +	if (!mem_section)
> > +		return NULL;
> > +#endif
> >  	if (!mem_section[SECTION_NR_TO_ROOT(nr)])
> >  		return NULL;
> >  	return &mem_section[SECTION_NR_TO_ROOT(nr)][nr & SECTION_ROOT_MASK];
> > --- a/mm/page_alloc.c
> > +++ b/mm/page_alloc.c
> > @@ -5651,6 +5651,16 @@ void __init sparse_memory_present_with_a
> >  	unsigned long start_pfn, end_pfn;
> >  	int i, this_nid;
> >  
> > +#ifdef CONFIG_SPARSEMEM_EXTREME
> > +	if (!mem_section) {
> > +		unsigned long size, align;
> > +
> > +		size = sizeof(struct mem_section) * NR_SECTION_ROOTS;
> > +		align = 1 << (INTERNODE_CACHE_SHIFT);
> > +		mem_section = memblock_virt_alloc(size, align);
> > +	}
> > +#endif
> > +
> >  	for_each_mem_pfn_range(i, nid, &start_pfn, &end_pfn, &this_nid)
> >  		memory_present(this_nid, start_pfn, end_pfn);
> >  }
> > --- a/mm/sparse.c
> > +++ b/mm/sparse.c
> > @@ -23,8 +23,7 @@
> >   * 1) mem_section	- memory sections, mem_map's for valid memory
> >   */
> >  #ifdef CONFIG_SPARSEMEM_EXTREME
> > -struct mem_section *mem_section[NR_SECTION_ROOTS]
> > -	____cacheline_internodealigned_in_smp;
> > +struct mem_section **mem_section;
> >  #else
> >  struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT]
> >  	____cacheline_internodealigned_in_smp;
> > @@ -101,7 +100,7 @@ static inline int sparse_index_init(unsi
> >  int __section_nr(struct mem_section* ms)
> >  {
> >  	unsigned long root_nr;
> > -	struct mem_section* root;
> > +	struct mem_section *root = NULL;
> >  
> >  	for (root_nr = 0; root_nr < NR_SECTION_ROOTS; root_nr++) {
> >  		root = __nr_to_section(root_nr * SECTIONS_PER_ROOT);
> > @@ -112,7 +111,7 @@ int __section_nr(struct mem_section* ms)
> >  		     break;
> >  	}
> >  
> > -	VM_BUG_ON(root_nr == NR_SECTION_ROOTS);
> > +	VM_BUG_ON(!root);
> >  
> >  	return (root_nr * SECTIONS_PER_ROOT) + (ms - root);
> >  }
> > @@ -330,11 +329,17 @@ again:
> >  static void __init check_usemap_section_nr(int nid, unsigned long *usemap)
> >  {
> >  	unsigned long usemap_snr, pgdat_snr;
> > -	static unsigned long old_usemap_snr = NR_MEM_SECTIONS;
> > -	static unsigned long old_pgdat_snr = NR_MEM_SECTIONS;
> > +	static unsigned long old_usemap_snr;
> > +	static unsigned long old_pgdat_snr;
> >  	struct pglist_data *pgdat = NODE_DATA(nid);
> >  	int usemap_nid;
> >  
> > +	/* First call */
> > +	if (!old_usemap_snr) {
> > +		old_usemap_snr = NR_MEM_SECTIONS;
> > +		old_pgdat_snr = NR_MEM_SECTIONS;
> > +	}
> > +
> >  	usemap_snr = pfn_to_section_nr(__pa(usemap) >> PAGE_SHIFT);
> >  	pgdat_snr = pfn_to_section_nr(__pa(pgdat) >> PAGE_SHIFT);
> >  	if (usemap_snr == pgdat_snr)
> > 
> > 

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

WARNING: multiple messages have this Message-ID (diff)
From: Ingo Molnar <mingo@kernel.org>
To: Mike Galbraith <efault@gmx.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Andy Lutomirski <luto@amacapital.net>,
	Borislav Petkov <bp@suse.de>,
	Cyrill Gorcunov <gorcunov@openvz.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-mm@kvack.org
Subject: Re: [PATCH 4.14 023/159] mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
Date: Mon, 8 Jan 2018 17:04:44 +0100	[thread overview]
Message-ID: <20180108160444.2ol4fvgqbxnjmlpg@gmail.com> (raw)
In-Reply-To: <1515302062.6507.18.camel@gmx.de>


hi Kirill,

As Mike reported it below, your 5-level paging related upstream commit 
83e3c48729d9 and all its followup fixes:

 83e3c48729d9: mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
 629a359bdb0e: mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
 d09cfbbfa0f7: mm/sparse.c: wrong allocation for mem_section

... still breaks kexec - and that now regresses -stable as well.

Given that 5-level paging now syntactically depends on having this commit, if we 
fully revert this then we'll have to disable 5-level paging as well.

Thanks,

	Ingo

* Mike Galbraith <efault@gmx.de> wrote:

> On Fri, 2017-12-22 at 09:45 +0100, Greg Kroah-Hartman wrote:
> > 4.14-stable review patch.  If anyone has any objections, please let me know.
> 
> FYI, this broke kdump, or rather the makedumpfile part thereof.
>  Forward looking wreckage is par for the kdump course, but...
> 
> > ------------------
> > 
> > From: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > 
> > commit 83e3c48729d9ebb7af5a31a504f3fd6aff0348c4 upstream.
> > 
> > Size of the mem_section[] array depends on the size of the physical address space.
> > 
> > In preparation for boot-time switching between paging modes on x86-64
> > we need to make the allocation of mem_section[] dynamic, because otherwise
> > we waste a lot of RAM: with CONFIG_NODE_SHIFT=10, mem_section[] size is 32kB
> > for 4-level paging and 2MB for 5-level paging mode.
> > 
> > The patch allocates the array on the first call to sparse_memory_present_with_active_regions().
> > 
> > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > Cc: Andrew Morton <akpm@linux-foundation.org>
> > Cc: Andy Lutomirski <luto@amacapital.net>
> > Cc: Borislav Petkov <bp@suse.de>
> > Cc: Cyrill Gorcunov <gorcunov@openvz.org>
> > Cc: Linus Torvalds <torvalds@linux-foundation.org>
> > Cc: Peter Zijlstra <peterz@infradead.org>
> > Cc: Thomas Gleixner <tglx@linutronix.de>
> > Cc: linux-mm@kvack.org
> > Link: http://lkml.kernel.org/r/20170929140821.37654-2-kirill.shutemov@linux.intel.com
> > Signed-off-by: Ingo Molnar <mingo@kernel.org>
> > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> > 
> > ---
> >  include/linux/mmzone.h |    6 +++++-
> >  mm/page_alloc.c        |   10 ++++++++++
> >  mm/sparse.c            |   17 +++++++++++------
> >  3 files changed, 26 insertions(+), 7 deletions(-)
> > 
> > --- a/include/linux/mmzone.h
> > +++ b/include/linux/mmzone.h
> > @@ -1152,13 +1152,17 @@ struct mem_section {
> >  #define SECTION_ROOT_MASK	(SECTIONS_PER_ROOT - 1)
> >  
> >  #ifdef CONFIG_SPARSEMEM_EXTREME
> > -extern struct mem_section *mem_section[NR_SECTION_ROOTS];
> > +extern struct mem_section **mem_section;
> >  #else
> >  extern struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT];
> >  #endif
> >  
> >  static inline struct mem_section *__nr_to_section(unsigned long nr)
> >  {
> > +#ifdef CONFIG_SPARSEMEM_EXTREME
> > +	if (!mem_section)
> > +		return NULL;
> > +#endif
> >  	if (!mem_section[SECTION_NR_TO_ROOT(nr)])
> >  		return NULL;
> >  	return &mem_section[SECTION_NR_TO_ROOT(nr)][nr & SECTION_ROOT_MASK];
> > --- a/mm/page_alloc.c
> > +++ b/mm/page_alloc.c
> > @@ -5651,6 +5651,16 @@ void __init sparse_memory_present_with_a
> >  	unsigned long start_pfn, end_pfn;
> >  	int i, this_nid;
> >  
> > +#ifdef CONFIG_SPARSEMEM_EXTREME
> > +	if (!mem_section) {
> > +		unsigned long size, align;
> > +
> > +		size = sizeof(struct mem_section) * NR_SECTION_ROOTS;
> > +		align = 1 << (INTERNODE_CACHE_SHIFT);
> > +		mem_section = memblock_virt_alloc(size, align);
> > +	}
> > +#endif
> > +
> >  	for_each_mem_pfn_range(i, nid, &start_pfn, &end_pfn, &this_nid)
> >  		memory_present(this_nid, start_pfn, end_pfn);
> >  }
> > --- a/mm/sparse.c
> > +++ b/mm/sparse.c
> > @@ -23,8 +23,7 @@
> >   * 1) mem_section	- memory sections, mem_map's for valid memory
> >   */
> >  #ifdef CONFIG_SPARSEMEM_EXTREME
> > -struct mem_section *mem_section[NR_SECTION_ROOTS]
> > -	____cacheline_internodealigned_in_smp;
> > +struct mem_section **mem_section;
> >  #else
> >  struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT]
> >  	____cacheline_internodealigned_in_smp;
> > @@ -101,7 +100,7 @@ static inline int sparse_index_init(unsi
> >  int __section_nr(struct mem_section* ms)
> >  {
> >  	unsigned long root_nr;
> > -	struct mem_section* root;
> > +	struct mem_section *root = NULL;
> >  
> >  	for (root_nr = 0; root_nr < NR_SECTION_ROOTS; root_nr++) {
> >  		root = __nr_to_section(root_nr * SECTIONS_PER_ROOT);
> > @@ -112,7 +111,7 @@ int __section_nr(struct mem_section* ms)
> >  		     break;
> >  	}
> >  
> > -	VM_BUG_ON(root_nr == NR_SECTION_ROOTS);
> > +	VM_BUG_ON(!root);
> >  
> >  	return (root_nr * SECTIONS_PER_ROOT) + (ms - root);
> >  }
> > @@ -330,11 +329,17 @@ again:
> >  static void __init check_usemap_section_nr(int nid, unsigned long *usemap)
> >  {
> >  	unsigned long usemap_snr, pgdat_snr;
> > -	static unsigned long old_usemap_snr = NR_MEM_SECTIONS;
> > -	static unsigned long old_pgdat_snr = NR_MEM_SECTIONS;
> > +	static unsigned long old_usemap_snr;
> > +	static unsigned long old_pgdat_snr;
> >  	struct pglist_data *pgdat = NODE_DATA(nid);
> >  	int usemap_nid;
> >  
> > +	/* First call */
> > +	if (!old_usemap_snr) {
> > +		old_usemap_snr = NR_MEM_SECTIONS;
> > +		old_pgdat_snr = NR_MEM_SECTIONS;
> > +	}
> > +
> >  	usemap_snr = pfn_to_section_nr(__pa(usemap) >> PAGE_SHIFT);
> >  	pgdat_snr = pfn_to_section_nr(__pa(pgdat) >> PAGE_SHIFT);
> >  	if (usemap_snr == pgdat_snr)
> > 
> > 

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

  parent reply	other threads:[~2018-01-08 16:04 UTC|newest]

Thread overview: 349+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-22  8:44 [PATCH 4.14 000/159] 4.14.9-stable review Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 001/159] x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 002/159] objtool: Dont report end of section error after an empty unwind hint Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 003/159] x86/head: Remove confusing comment Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 004/159] x86/head: Remove unused bad_address code Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 005/159] x86/head: Fix head ELF function annotations Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 006/159] x86/boot: Annotate verify_cpu() as a callable function Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 007/159] x86/xen: Fix xen head ELF annotations Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 008/159] x86/xen: Add unwind hint annotations Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 009/159] x86/head: " Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 010/159] ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq() Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 011/159] x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 012/159] x86/fpu/debug: Remove unused x86_fpu_state and x86_fpu_deactivate_state tracepoints Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 013/159] x86/unwind: Rename unwinder config options to CONFIG_UNWINDER_* Greg Kroah-Hartman
2017-12-22  8:44 ` [PATCH 4.14 014/159] x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 015/159] bitops: Add clear/set_bit32() to linux/bitops.h Greg Kroah-Hartman
2017-12-26 21:41   ` Ben Hutchings
2017-12-27 12:48     ` Greg Kroah-Hartman
2017-12-27 19:40       ` Ben Hutchings
2017-12-22  8:45 ` [PATCH 4.14 016/159] x86/cpuid: Add generic table for CPUID dependencies Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 017/159] x86/fpu: Parse clearcpuid= as early XSAVE argument Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 018/159] x86/fpu: Make XSAVE check the base CPUID features before enabling Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 019/159] x86/fpu: Remove the explicit clearing of XSAVE dependent features Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 020/159] x86/platform/UV: Convert timers to use timer_setup() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 021/159] objtool: Print top level commands on incorrect usage Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 022/159] x86/cpuid: Prevent out of bound access in do_clear_cpu_cap() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 023/159] mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22 14:18   ` Dan Rue
2017-12-22 14:18     ` Dan Rue
2017-12-22 14:52     ` Naresh Kamboju
2017-12-22 14:52       ` Naresh Kamboju
2017-12-22 15:12       ` Greg Kroah-Hartman
2017-12-22 15:12         ` Greg Kroah-Hartman
2017-12-22 15:03     ` Greg Kroah-Hartman
2017-12-22 15:03       ` Greg Kroah-Hartman
2018-01-07  5:14   ` Mike Galbraith
2018-01-07  5:14     ` Mike Galbraith
2018-01-07  5:14     ` Mike Galbraith
2018-01-07  9:11     ` Greg Kroah-Hartman
2018-01-07  9:11       ` Greg Kroah-Hartman
2018-01-07  9:11       ` Greg Kroah-Hartman
2018-01-07  9:21       ` Mike Galbraith
2018-01-07  9:21         ` Mike Galbraith
2018-01-07  9:21         ` Mike Galbraith
2018-01-07 10:18       ` Michal Hocko
2018-01-07 10:18         ` Michal Hocko
2018-01-07 10:18         ` Michal Hocko
2018-01-07 10:42         ` Greg Kroah-Hartman
2018-01-07 10:42           ` Greg Kroah-Hartman
2018-01-07 10:42           ` Greg Kroah-Hartman
2018-01-07 12:44         ` Mike Galbraith
2018-01-07 12:44           ` Mike Galbraith
2018-01-07 12:44           ` Mike Galbraith
2018-01-07 13:23           ` Michal Hocko
2018-01-07 13:23             ` Michal Hocko
2018-01-07 13:23             ` Michal Hocko
2018-01-08  7:53             ` Greg Kroah-Hartman
2018-01-08  7:53               ` Greg Kroah-Hartman
2018-01-08  7:53               ` Greg Kroah-Hartman
2018-01-08  8:15               ` Mike Galbraith
2018-01-08  8:15                 ` Mike Galbraith
2018-01-08  8:15                 ` Mike Galbraith
2018-01-08  8:33                 ` Greg Kroah-Hartman
2018-01-08  8:33                   ` Greg Kroah-Hartman
2018-01-08  8:33                   ` Greg Kroah-Hartman
2018-01-08  9:45                   ` Mike Galbraith
2018-01-08  9:45                     ` Mike Galbraith
2018-01-08  9:45                     ` Mike Galbraith
2018-01-08  8:47               ` Michal Hocko
2018-01-08  8:47                 ` Michal Hocko
2018-01-08  8:47                 ` Michal Hocko
2018-01-08  9:10                 ` Greg Kroah-Hartman
2018-01-08  9:10                   ` Greg Kroah-Hartman
2018-01-08  9:10                   ` Greg Kroah-Hartman
2018-01-08  9:27                   ` Greg Kroah-Hartman
2018-01-08  9:27                     ` Greg Kroah-Hartman
2018-01-08  9:27                     ` Greg Kroah-Hartman
2018-01-08 16:04     ` Ingo Molnar [this message]
2018-01-08 16:04       ` Ingo Molnar
2018-01-08 16:04       ` Ingo Molnar
2018-01-08 17:46       ` Kirill A. Shutemov
2018-01-08 17:46         ` Kirill A. Shutemov
2018-01-09  0:13         ` Kirill A. Shutemov
2018-01-09  0:13           ` Kirill A. Shutemov
2018-01-09  0:13           ` Kirill A. Shutemov
2018-01-09  0:13           ` Kirill A. Shutemov
2018-01-09  1:09           ` Dave Young
2018-01-09  1:09             ` Dave Young
2018-01-09  1:09             ` Dave Young
2018-01-09  5:41             ` Baoquan He
2018-01-09  5:41               ` Baoquan He
2018-01-09  5:41               ` Baoquan He
2018-01-09  7:24               ` Dave Young
2018-01-09  7:24                 ` Dave Young
2018-01-09  7:24                 ` Dave Young
2018-01-09  9:05                 ` Kirill A. Shutemov
2018-01-09  9:05                   ` Kirill A. Shutemov
2018-01-09  9:05                   ` Kirill A. Shutemov
2018-01-10  3:08                   ` Dave Young
2018-01-10  3:08                     ` Dave Young
2018-01-10  3:08                     ` Dave Young
2018-01-10 11:16                     ` Kirill A. Shutemov
2018-01-10 11:16                       ` Kirill A. Shutemov
2018-01-10 11:16                       ` Kirill A. Shutemov
2018-01-10 11:16                       ` Kirill A. Shutemov
2018-01-11  1:06                       ` Baoquan He
2018-01-11  1:06                         ` Baoquan He
2018-01-11  1:06                         ` Baoquan He
2018-01-12  0:55                       ` Dave Young
2018-01-12  0:55                         ` Dave Young
2018-01-12  0:55                         ` Dave Young
2018-01-15  5:57                         ` Omar Sandoval
2018-01-15  5:57                           ` Omar Sandoval
2018-01-15  5:57                           ` Omar Sandoval
2018-01-15  5:57                           ` Omar Sandoval
2018-01-16  8:36                           ` Atsushi Kumagai
2018-01-16  8:36                             ` Atsushi Kumagai
2018-01-16  8:36                             ` Atsushi Kumagai
2018-01-16  8:36                             ` Atsushi Kumagai
2018-01-09  3:44           ` Mike Galbraith
2018-01-09  3:44             ` Mike Galbraith
2018-01-09  3:44             ` Mike Galbraith
2018-01-09  3:44             ` Mike Galbraith
2018-02-07  9:25             ` Dou Liyang
2018-02-07  9:25               ` Dou Liyang
2018-02-07  9:25               ` Dou Liyang
2018-02-07 10:41               ` Kirill A. Shutemov
2018-02-07 10:41                 ` Kirill A. Shutemov
2018-02-07 10:41                 ` Kirill A. Shutemov
2018-02-07 10:45                 ` Mike Galbraith
2018-02-07 10:45                   ` Mike Galbraith
2018-02-07 10:45                   ` Mike Galbraith
2018-02-07 10:45                   ` Mike Galbraith
2018-02-07 12:00                   ` Dou Liyang
2018-02-07 12:00                     ` Dou Liyang
2018-02-07 12:00                     ` Dou Liyang
2018-02-07 12:08                     ` Baoquan He
2018-02-07 12:08                       ` Baoquan He
2018-02-07 12:08                       ` Baoquan He
2018-02-07 12:17                       ` Dou Liyang
2018-02-07 12:17                         ` Dou Liyang
2018-02-07 12:17                         ` Dou Liyang
2018-02-07 12:17                         ` Dou Liyang
2018-02-07 12:27                         ` Baoquan He
2018-02-07 12:27                           ` Baoquan He
2018-02-07 12:27                           ` Baoquan He
2018-02-07 12:34                           ` Dou Liyang
2018-02-07 12:34                             ` Dou Liyang
2018-02-07 12:34                             ` Dou Liyang
2018-02-07 12:34                             ` Dou Liyang
2018-02-07 12:45                             ` Baoquan He
2018-02-07 12:45                               ` Baoquan He
2018-02-07 12:45                               ` Baoquan He
2018-02-08  1:14                               ` Dou Liyang
2018-02-08  1:14                                 ` Dou Liyang
2018-02-08  1:14                                 ` Dou Liyang
2018-02-08  1:23                                 ` Baoquan He
2018-02-08  1:23                                   ` Baoquan He
2018-02-08  1:23                                   ` Baoquan He
2018-02-08  1:44                                   ` Dou Liyang
2018-02-08  1:44                                     ` Dou Liyang
2018-02-08  1:44                                     ` Dou Liyang
2018-02-08  1:44                                     ` Dou Liyang
2018-02-07 11:28               ` Baoquan He
2018-02-07 11:28                 ` Baoquan He
2018-02-07 11:28                 ` Baoquan He
2018-01-17  5:24           ` Baoquan He
2018-01-17  5:24             ` Baoquan He
2018-01-17  5:24             ` Baoquan He
2018-01-25 15:50             ` Kirill A. Shutemov
2018-01-25 15:50               ` Kirill A. Shutemov
2018-01-25 15:50               ` Kirill A. Shutemov
2018-01-26  2:48               ` Baoquan He
2018-01-26  2:48                 ` Baoquan He
2018-01-26  2:48                 ` Baoquan He
2017-12-22  8:45 ` [PATCH 4.14 024/159] x86/kasan: Use the same shadow offset for 4- and 5-level paging Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 025/159] x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and CONFIG_XEN_PVH=y Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 026/159] x86/xen: Drop 5-level paging support code from the XEN_PV code Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 027/159] ACPI / APEI: remove the unused dead-code for SEA/NMI notification type Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 028/159] x86/asm: Dont use the confusing .ifeq directive Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 029/159] x86/build: Beautify build log of syscall headers Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 030/159] x86/mm/64: Rename the register_page_bootmem_memmap() size parameter to nr_pages Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 031/159] x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 032/159] x86/mm: Relocate page fault error codes to traps.h Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 033/159] x86/boot: Relocate definition of the initial state of CR0 Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 034/159] ptrace,x86: Make user_64bit_mode() available to 32-bit builds Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 035/159] x86/entry/64: Remove the restore_c_regs_and_iret label Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 036/159] x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 037/159] x86/entry/64: Move SWAPGS into the common IRET-to-usermode path Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 038/159] x86/entry/64: Simplify reg restore code in the standard IRET paths Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 039/159] x86/entry/64: Shrink paranoid_exit_restore and make labels local Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 040/159] x86/entry/64: Use pop instead of movq in syscall_return_via_sysret Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 041/159] x86/entry/64: Merge the fast and slow SYSRET paths Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 042/159] x86/entry/64: Use POP instead of MOV to restore regs on NMI return Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 043/159] x86/entry/64: Remove the RESTORE_..._REGS infrastructure Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 044/159] xen, x86/entry/64: Add xen NMI trap entry Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 045/159] x86/entry/64: De-Xen-ify our NMI code Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 046/159] x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of native_load_sp0() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 047/159] x86/entry/64: Pass SP0 directly to load_sp0() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 048/159] x86/entry: Add task_top_of_stack() to find the top of a tasks stack Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 049/159] x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 050/159] x86/entry/64: Stop initializing TSS.sp0 at boot Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 051/159] x86/entry/64: Remove all remaining direct thread_struct::sp0 reads Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 052/159] x86/entry/32: Fix cpu_current_top_of_stack initialization at boot Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 053/159] x86/entry/64: Remove thread_struct::sp0 Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 054/159] x86/traps: Use a new on_thread_stack() helper to clean up an assertion Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 055/159] x86/entry/64: Shorten TEST instructions Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 056/159] x86/cpuid: Replace set/clear_bit32() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 057/159] bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to linux/bitops.h") Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 058/159] x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 059/159] x86/cpufeatures: Re-tabulate the X86_FEATURE definitions Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 060/159] x86/cpufeatures: Fix various details in the feature definitions Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 061/159] selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 062/159] selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as well Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 063/159] ACPI / APEI: Replace ioremap_page_range() with fixmap Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 064/159] x86/virt, x86/platform: Merge struct x86_hyper into struct x86_platform and struct x86_init Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45 ` Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 065/159] x86/virt: Add enum for hypervisors to replace x86_hyper Greg Kroah-Hartman
2017-12-22  8:45 ` Greg Kroah-Hartman
2017-12-22  8:45 ` Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 066/159] drivers/misc/intel/pti: Rename the header file to free up the namespace Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 067/159] x86/cpufeature: Add User-Mode Instruction Prevention definitions Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 068/159] x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 069/159] perf/x86: Enable free running PEBS for REGS_USER/INTR Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 070/159] bpf: fix build issues on um due to mising bpf_perf_event.h Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 071/159] locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE() Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 072/159] locking/barriers: Convert users of lockless_dereference() " Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 073/159] x86/mm/kasan: Dont use vmemmap_populate() to initialize shadow Greg Kroah-Hartman
2017-12-22  8:45 ` [PATCH 4.14 074/159] x86/entry/64/paravirt: Use paravirt-safe macro to access eflags Greg Kroah-Hartman
2017-12-22  8:45   ` Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 075/159] x86/unwinder/orc: Dont bail on stack overflow Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 076/159] x86/unwinder: Handle stack overflows more gracefully Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 077/159] x86/irq: Remove an old outdated comment about context tracking races Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 078/159] x86/irq/64: Print the offending IP in the stack overflow warning Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 079/159] x86/entry/64: Allocate and enable the SYSENTER stack Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 080/159] x86/dumpstack: Add get_stack_info() support for " Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 081/159] x86/entry/gdt: Put per-CPU GDT remaps in ascending order Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 082/159] x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct cpu_entry_area Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 083/159] x86/kasan/64: Teach KASAN about the cpu_entry_area Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 084/159] x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 085/159] x86/dumpstack: Handle stack overflow on all stacks Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 086/159] x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 087/159] x86/entry: Remap the TSS into the CPU entry area Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 088/159] x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0 Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 089/159] x86/espfix/64: Stop assuming that pt_regs is on the entry stack Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 090/159] x86/entry/64: Use a per-CPU trampoline stack for IDT entries Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 091/159] x86/entry/64: Return to userspace from the trampoline stack Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 092/159] x86/entry/64: Create a per-CPU SYSCALL entry trampoline Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 093/159] x86/entry/64: Move the IST stacks into struct cpu_entry_area Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 094/159] x86/entry/64: Remove the SYSENTER stack canary Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 095/159] x86/entry: Clean up the SYSENTER_stack code Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 096/159] x86/entry/64: Make cpu_entry_area.tss read-only Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 097/159] x86/paravirt: Dont patch flush_tlb_single Greg Kroah-Hartman
2017-12-22  8:46   ` Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 098/159] x86/paravirt: Provide a way to check for hypervisors Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 099/159] x86/cpufeatures: Make CPU bugs sticky Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 100/159] optee: fix invalid of_node_put() in optee_driver_init() Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 101/159] backlight: pwm_bl: Fix overflow condition Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 102/159] drm: Add retries for lspcon mode detection Greg Kroah-Hartman
2017-12-22  8:46   ` Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 103/159] clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 104/159] clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 105/159] crypto: crypto4xx - increase context and scatter ring buffer elements Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 106/159] crypto: lrw - Fix an error handling path in create() Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 107/159] rtc: pl031: make interrupt optional Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 108/159] kvm, mm: account kvm related kmem slabs to kmemcg Greg Kroah-Hartman
2017-12-22  9:34   ` Michal Hocko
2017-12-22 12:41     ` Greg Kroah-Hartman
2017-12-22 13:06       ` Michal Hocko
2017-12-22 17:40         ` alexander.levin
2017-12-22 17:56           ` Michal Hocko
2017-12-22 18:07             ` alexander.levin
2017-12-22 18:22               ` Michal Hocko
2017-12-22 21:55                 ` alexander.levin
2017-12-23  9:24             ` Greg Kroah-Hartman
2017-12-27 10:30               ` Paolo Bonzini
2017-12-22  8:46 ` [PATCH 4.14 109/159] net: phy: at803x: Change error to EINVAL for invalid MAC Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 110/159] PCI: Avoid bus reset if bridge itself is broken Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 111/159] scsi: cxgb4i: fix Tx skb leak Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 112/159] scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume created on two SATA drive Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 113/159] PCI: Create SR-IOV virtfn/physfn links before attaching driver Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 114/159] PM / OPP: Move error message to debug level Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 115/159] igb: check memory allocation failure Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 116/159] i40e: use the safe hash table iterator when deleting mac filters Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 117/159] iio: st_sensors: add register mask for status register Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 118/159] ixgbe: fix use of uninitialized padding Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 119/159] IB/rxe: check for allocation failure on elem Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 120/159] block,bfq: Disable writeback throttling Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 121/159] md: always set THREAD_WAKEUP and wake up wqueue if thread existed Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 122/159] ip_gre: check packet length and mtu correctly in erspan tx Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 123/159] ipv6: grab rt->rt6i_ref before allocating pcpu rt Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 125/159] Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 126/159] Bluetooth: hci_bcm: Fix setting of irq trigger type Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 127/159] i40e/i40evf: spread CPU affinity hints across online CPUs only Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 128/159] PCI/AER: Report non-fatal errors only to the affected endpoint Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 129/159] tracing: Exclude generic fields from histograms Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 131/159] ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 132/159] powerpc/xmon: Avoid tripping SMP hardlockup watchdog Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 133/159] powerpc/watchdog: Do not trigger SMP crash from touch_nmi_watchdog Greg Kroah-Hartman
2017-12-22  8:46 ` [PATCH 4.14 134/159] sctp: silence warns on sctp_stream_init allocations Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 135/159] ASoC: codecs: msm8916-wcd-analog: fix module autoload Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 136/159] fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 137/159] scsi: lpfc: Fix secure firmware updates Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 138/159] scsi: lpfc: PLOGI failures during NPIV testing Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 139/159] scsi: lpfc: Fix warning messages when NVME_TARGET_FC not defined Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 140/159] i40e: fix client notify of VF reset Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 141/159] vfio/pci: Virtualize Maximum Payload Size Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 142/159] ARM: exynos_defconfig: Enable UAS support for Odroid HC1 board Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 143/159] fm10k: ensure we process SM mbx when processing VF mbx Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 144/159] ibmvnic: Set state UP Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 145/159] net: ipv6: send NS for DAD when link operationally up Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 146/159] RDMA/hns: Avoid NULL pointer exception Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 147/159] staging: greybus: light: Release memory obtained by kasprintf Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 148/159] clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 149/159] tcp: fix under-evaluated ssthresh in TCP Vegas Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 150/159] rtc: set the alarm to the next expiring timer Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 151/159] cpuidle: fix broadcast control when broadcast can not be entered Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 152/159] drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 153/159] IB/opa_vnic: Properly clear Mac Table Digest Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 154/159] IB/opa_vnic: Properly return the total MACs in UC MAC list Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 155/159] thermal/drivers/hisi: Fix missing interrupt enablement Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 156/159] thermal/drivers/hisi: Fix kernel panic on alarm interrupt Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 157/159] thermal/drivers/hisi: Simplify the temperature/step computation Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 158/159] thermal/drivers/hisi: Fix multiple alarm interrupts firing Greg Kroah-Hartman
2017-12-22  8:47 ` [PATCH 4.14 159/159] platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes Greg Kroah-Hartman
2017-12-22 15:08 ` [PATCH 4.14 000/159] 4.14.9-stable review Greg Kroah-Hartman
2017-12-22 15:54   ` Greg Kroah-Hartman
2017-12-22 18:15     ` Guenter Roeck
2017-12-23 14:21       ` Greg Kroah-Hartman
2017-12-23 17:09         ` Guenter Roeck
     [not found] ` <5a3cfea4.0692500a.66bcf.cf6b@mx.google.com>
2017-12-22 15:11   ` Greg Kroah-Hartman
2017-12-22 15:45     ` Greg Kroah-Hartman
2017-12-22 21:09 ` Shuah Khan
2017-12-23  9:14   ` Greg Kroah-Hartman
2017-12-22 22:31 ` Dan Rue
2017-12-23  9:17   ` Greg Kroah-Hartman
2017-12-23 22:54 ` Guenter Roeck
2017-12-25 13:35   ` Greg Kroah-Hartman
2017-12-24 19:37 ` Ivan Kozik
2017-12-24 22:03   ` Andre Tomt
2017-12-25 13:38   ` Greg Kroah-Hartman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180108160444.2ol4fvgqbxnjmlpg@gmail.com \
    --to=mingo@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=bp@suse.de \
    --cc=efault@gmx.de \
    --cc=gorcunov@openvz.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=luto@amacapital.net \
    --cc=peterz@infradead.org \
    --cc=stable@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.