From: Pengfei Hu <hpfei.cn@gmail.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Vegard Nossum <vegard.nossum@gmail.com>,
akpm@linux-foundation.org, torvalds@linux-foundation.org,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: Using module private memory to simulate microkernel's memory protection
Date: Sat, 21 Feb 2009 17:24:56 +0800 [thread overview]
Message-ID: <a5f59d880902210124wf5cc82dtd2b7cd6eacdd2230@mail.gmail.com> (raw)
In-Reply-To: <20090211152342.GA16550@elte.hu>
I wonder why kmemcheck has so many version. Can you tell me the
relation between them? My main target of this patch is checking
dangling pointer. But the fulll checking of dangling pointer is very
difficult. It need tracking reference of a memory. I only know NuMega
BoundsChecker can do this. Valgrind uses another method to check it.
It always allocate different address until consume all the available
address. Then it will loop again. So this method is not complete
enough. My patch can't really check dangling pointer. It can only
limit dangling pointer inside its own module and avoid the worst case:
one module write other module's memory randomly.
Kmemcheck track every access of allocating memory. But it can't track
reference of local variable. I think only instrumentation can do this
job. GCC bounds checking can error of check out of range. But it can't
check dangling pointer. I want to add this feature to it. GCC bounds
checking's instrumentation is at tree level. So it can't be used in
other complier. I want make instrumentation at source code. So it can
be used in other complier and platform. I know a unit test software
use this method to check coverage. If we can make instrumentation at
source code, then we will get the most flexibility.
I'll be very happy if my patch can be combined with kmemcheck. I don't
know if Vegard Nossum admit my idea. What should I do next?
linux/kernel/git/vegard/kmemcheck.gi
linux/kernel/git/x86/linux-2.6-kmemcheck-4.git
linux/kernel/git/x86/linux-2.6-kmemcheck-v2.git
linux/kernel/git/x86/linux-2.6-kmemcheck-v3.git
linux/kernel/git/x86/linux-2.6-kmemcheck.git
>
> Kmemcheck uses debug traps to execute a single instruction, and thus gets
> finer grained control of what is visible to a task.
>
> Ingo
>
--
Regards,
Pengfei
--
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>
prev parent reply other threads:[~2009-02-21 9:24 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-10 13:42 Using module private memory to simulate microkernel's memory protection Pengfei Hu
2009-02-10 14:14 ` Ingo Molnar
2009-02-11 14:04 ` Pengfei Hu
2009-02-11 14:55 ` Ingo Molnar
2009-02-11 15:23 ` Ingo Molnar
2009-02-21 9:24 ` Pengfei Hu [this message]
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=a5f59d880902210124wf5cc82dtd2b7cd6eacdd2230@mail.gmail.com \
--to=hpfei.cn@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mingo@elte.hu \
--cc=torvalds@linux-foundation.org \
--cc=vegard.nossum@gmail.com \
/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;
as well as URLs for NNTP newsgroup(s).