lkml.org 
[lkml]   [2011]   [May]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Stable-review] [36/55] [PARISC] slub: fix panic with DISCONTIGMEM
On Mon, 2 May 2011, Ben Hutchings wrote:

> > From: James Bottomley <James.Bottomley@HansenPartnership.com>
> >
> > commit 4a5fa3590f09999f6db41bc386bce40848fa9f63 upstream.
> >
> > Slub makes assumptions about page_to_nid() which are violated by
> > DISCONTIGMEM and !NUMA. This violation results in a panic because
> > page_to_nid() can be non-zero for pages in the discontiguous ranges and
> > this leads to a null return by get_node(). The assertion by the
> > maintainer is that DISCONTIGMEM should only be allowed when NUMA is also
> > defined. However, at least six architectures: alpha, ia64, m32r, m68k,
> > mips, parisc violate this. The panic is a regression against slab, so
> > just mark slub broken in the problem configuration to prevent users
> > reporting these panics.
>
> This stable series also included the patches:
>
> commit 6a682f634ba9615d3498d1e20a23e9d4fcb39f16
> Author: David Rientjes <rientjes@google.com>
> Date: Wed Apr 20 19:27:13 2011 -0700
>
> set memory ranges in N_NORMAL_MEMORY when onlined
>
> commit d9b41e0b54fd7e164daf1e9c539c1070398aa02e upstream.
>
> commit 8858587af25efc06d5cce42676786b3d7a9160f2
> Author: Michael Schmitz <schmitzmic@googlemail.com>
> Date: Tue Apr 26 14:51:53 2011 +1200
>
> m68k/mm: Set all online nodes in N_NORMAL_MEMORY
>
> commit 4aac0b4815ba592052758f4b468f253d383dc9d6 upstream.
>
> which look like they're supposed to make slub work on these two
> architectures (parisc and m68k). Do they? If not, do they fix a
> different problem?
>

SLUB relies heavily on N_NORMAL_MEMORY, so these two patches fix that
allocator but the problem is actually not just isolated to that subsystem;
it fixes an issue with anything that uses N_NORMAL_MEMORY.

The former patch sets the nodes correctly for parisc and Michael's patch
sets the nodes correctly for m68k, so it's the same fix for two different
previously-broken architectures.


\
 
 \ /
  Last update: 2011-05-04 00:49    [W:0.088 / U:0.068 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site