linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Sergey Senozhatsky <sergey.senozhatsky@mail.by>
To: Catalin Marinas <catalin.marinas@arm.com>
Cc: Pekka Enberg <penberg@cs.helsinki.fi>,
	"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org
Subject: kmemleak: Early log buffer exceeded
Date: Wed, 24 Jun 2009 00:26:48 +0300	[thread overview]
Message-ID: <20090623212648.GA9502@localdomain.by> (raw)

Hello.
I can see on my both machines

[    0.000135] kmemleak: Early log buffer exceeded
[    0.000140] Pid: 0, comm: swapper Not tainted 2.6.30-dbginfo-nv-git19 #7
[    0.000144] Call Trace:
[    0.000153]  [<c1418ecc>] ? printk+0x23/0x36
[    0.000160]  [<c10f7c12>] log_early+0xf2/0x110
[    0.000165]  [<c10f8788>] kmemleak_alloc+0x1f8/0x2c0
[    0.000171]  [<c10f28fb>] ? cache_alloc_debugcheck_after+0xeb/0x1e0
[    0.000176]  [<c10f496a>] ? __kmalloc+0xfa/0x240
[    0.000182]  [<c10761fc>] ? trace_hardirqs_on_caller+0x14c/0x1a0
[    0.000187]  [<c10f4a15>] __kmalloc+0x1a5/0x240
[    0.000192]  [<c10f4d8d>] ? alloc_arraycache+0x2d/0x80
[    0.000198]  [<c10f4d8d>] alloc_arraycache+0x2d/0x80
[    0.000203]  [<c10f4e7c>] do_tune_cpucache+0x9c/0x3a0
[    0.000208]  [<c10f5322>] enable_cpucache+0x42/0x110
[    0.000215]  [<c15ff7c4>] kmem_cache_init_late+0x32/0x82
[    0.000221]  [<c15e2995>] start_kernel+0x24c/0x366
[    0.000226]  [<c15e2517>] ? unknown_bootoption+0x0/0x1dd
[    0.000231]  [<c15e2088>] __init_begin+0x88/0xa1

mm/kmemleak.c
static struct early_log early_log[200];

static void log_early(int op_type, const void *ptr, size_t size,
		      int min_count, unsigned long offset, size_t length)
{
...
	if (crt_early_log >= ARRAY_SIZE(early_log)) {
		print  Early log buffer exceeded;
		call dump_stack, etc.

So, my questions are:
1. Is 200 really enough? Why 200 not 512, 1024 (for example)?
//If this has been already discussed - please point me.

2. When (crt_early_log >= ARRAY_SIZE(early_log)) == 1 we just can see stack.
Since we have "full" early_log maybe it'll be helpfull to see it? 
//For example like at void __init kmemleak_init(void)

	Sergey

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

             reply	other threads:[~2009-06-23 21:24 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-23 21:26 Sergey Senozhatsky [this message]
2009-06-24  9:35 ` Catalin Marinas
2009-06-24 10:08   ` Sergey Senozhatsky
2009-06-24 13:18     ` Catalin Marinas
2009-06-23 22:10 Sergey Senozhatsky

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=20090623212648.GA9502@localdomain.by \
    --to=sergey.senozhatsky@mail.by \
    --cc=akpm@linux-foundation.org \
    --cc=catalin.marinas@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=penberg@cs.helsinki.fi \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox