[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48262A23.6030902@goop.org>
Date: Sun, 11 May 2008 00:05:07 +0100
From: Jeremy Fitzhardinge <jeremy@...p.org>
To: John Reiser <jreiser@...Wagon.com>
CC: Andi Kleen <andi@...stfloor.org>,
Vegard Nossum <vegard.nossum@...il.com>,
Bart Van Assche <bart.vanassche@...il.com>,
Pekka Enberg <penberg@...helsinki.fi>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Ingo Molnar <mingo@...e.hu>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Christoph Lameter <clameter@....com>,
Daniel Walker <dwalker@...sta.com>,
Randy Dunlap <randy.dunlap@...cle.com>,
Josh Aune <luken@...er.org>, Pekka Paalanen <pq@....fi>
Subject: Re: [ANNOUNCE] kmemcheck v7
John Reiser wrote:
> The valgrind+uml patches added a callback, "I am switching stacks >NOW<."
>
Hm, I never particularly liked that approach because unless you do the
whole thing in assembly it was never certain that there wasn't a
basic-block break between them (ie, atomic with respect to valgrind).
For the kernel that may be possible, but I was thinking of the general
case where you might want to use setjmp or something.
> If possible then it is better to tell an interpreter what is happening,
> rather than requiring that the interpreter [try to] figure it out.
>
Matter of taste really, but I tend to disagree. If you say something
like "addresses A-B, C-D, E-F are stacks", then the stack pointer
changing from the range A-B to C-D is a pretty clear indication of stack
switch, regardless of the mechanism you use to do it. Of course, an
explicit hint prevents an accidental push/pop of 32k onto an 8K stack
from being considered a stack switch, but unless you actually know where
the stacks are, you can't warn about it or prevent it from
validating/invalidating a pile of innocent memory.
J
--
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