Lars, normally set_pte_at() is invoked in a cache_flush_*() set_pte_at() tlb_flush_*() sequence. So I'm wondering if you're trying to fix something in set_pte_at that actually ought to be fixed in the cache_flush_*() function. I'm wondering, have you identified which cache flush function in particular was used in the sequence in your particular bug's case? Ralf