Re: [PATCH 1/2] kmemcheck v3

From: Andi Kleen
Date: Fri Feb 08 2008 - 07:45:38 EST


On Fri, Feb 08, 2008 at 01:18:37PM +0100, Vegard Nossum wrote:
> On 2/8/08, Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:
> > Your assumption that only the string instructions can take
> > multiple page faults seems a little dangerous too.
>
> Yes, this is true. I cannot guarantee that there are no other
> instructions that could access more than one memory location but only
> take one page fault. However, since the kernel does boot, we at least
> know that these instructions are not very frequently used. (If you
> know of any other instructions we might be missing, I'll be happy to
> know about it!)

Pretty much all in the right circumstances.

e.g. consider a segment reload in tracked memory.

Also there are various instructions which do all kinds of complicated
things internally; like IRET or INT: often with many memory accesses.
Just page through a instruction manual and look at the pseudo code
describing what the various instructions do.

>
> There is also the point that if kmemcheck doesn't handle all the
> faulting addresses, it will simply fault again and again, without
> making any progress. I mean, it won't go unnoticed for very long :-)
>
> This is also why we depend on M386 and !X86_GENERIC, to avoid those
> MMX, etc. instructions, as we have no support for those currently

I would not expect problems from MMX/SSE here (except for the generic
ones all instructions have)

-Andi

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/