On Thu, 2009-10-08 at 02:19 +0200, Joakim Tjernlund wrote:
Benjamin Herrenschmidt [off-list ref] wrote on 08/10/2009 02:04:56:
quoted
quoted
Yes it does. If one adds HWEXEC it will fail, right?
Why ? We can just filter out DSISR, we don't really care why it failed
as long as we know whether it was a store or not.
quoted
Also this count as a read and you could easily end up
in the protection case(in 2.4 you do)
I'm not sure what you mean by "the protection case" Again, the C code
shouldn't care.
it does, and it should. How else should you know if you try
to read a NA space?
Generic code should sort it out in handle_mm_fault() (or earlier if it
can't find a VMA at all).
The DSISR munging is really not necessary I believe.
2.4 and 2.6 have the same handling in asm.
Yeah but the C code, especially the generic part, is different.
hmm, maybe I should just call C, but 8xx isn't a speed monster so every
cycle counts :)
But that's a slow path anyways.
It works if I trap to C for DIRTY too.
Before thinking on porting my old board, I want 2.4 to enjoy
the new TLB code too :)
Hehehe.
Cheers,
Ben.