Compaq Alpha: missing i-cache invalidates in ptrace (2.2.18, 2.4.0) ?

From: James Cownie (jcownie@etnus.com)
Date: Thu Feb 15 2001 - 07:23:27 EST


I've been seeing some peculiar effects on Alpha boxes (particularly on
SMPs) where threads run right past breakpoints planted by a debugger.
(This on 2.2 series kernels).

Looking at the code in arch/alpha/kernel/ptrace.c there appears to be
nowhere where flush_icache_range is called. According to the Alpha
architecture manual you must execute a "call_pal imb" (which is what
flush_icache_range turns into) after changing the I-stream.

So :-

1) Anyone agree with me that flush_icache_range ought to be called
   after any ptrace write which modifies an executable page ?
   (Or have I missed something which has this effect ?)

2) If so, would patches be accepted ?

The same problem also appears to exist in 2.4...

Thanks

-- Jim

James Cownie <jcownie@etnus.com>
Etnus, LLC. +44 117 9071438
http://www.etnus.com

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



This archive was generated by hypermail 2b29 : Thu Feb 15 2001 - 21:00:26 EST