[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20130701130903.61459f57f4ba31e282065001@linux-foundation.org>
Date: Mon, 1 Jul 2013 13:09:03 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Christoph Lameter <cl@...ux.com>
Cc: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>,
glommer@...allels.com, penberg@...nel.org,
linux-kernel@...r.kernel.org
Subject: Re: [linux-next-20130422] Bug in SLAB?
On Tue, 7 May 2013 14:28:49 +0000 Christoph Lameter <cl@...ux.com> wrote:
> On Tue, 7 May 2013, Tetsuo Handa wrote:
>
> > > These are exclusively from the module load. So the kernel seems to be
> > > clean of large kmalloc's ?
> > >
> > There are modules (e.g. TOMOYO) which do not check for KMALLOC_MAX_SIZE limit
> > and expect kmalloc() larger than KMALLOC_MAX_SIZE bytes to return NULL.
>
> Dont do that. Please fix these things.
Slab should return NULL for a request greater than KMALLOC_MAX_SIZE.
For heaven's sake don't break that!
What's going on with this bug, btw? This:
--- a/mm/slab.c~slab-fix-init_lock_keys
+++ a/mm/slab.c
@@ -565,7 +565,7 @@ static void init_node_lock_keys(int q)
if (slab_state < UP)
return;
- for (i = 1; i < PAGE_SHIFT + MAX_ORDER; i++) {
+ for (i = 1; i <= KMALLOC_SHIFT_HIGH; i++) {
struct kmem_cache_node *n;
struct kmem_cache *cache = kmalloc_caches[i];
still seems to be unapplied.
I've read through the thread trying to work out what the end-user
impact of that fix is, but it's all clear as mud. It's possible that
the end-user effect is `kernel locks up after printing "Booting the
kernel"'. Or maybe not.
And if the above patch does indeed fix something significant, we might
need a -stable backport.
Can we get some clarity here please?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists