The hook is only needed for x86-like architectures, as all of the risc like
cpus perform the dirty state modification in the page fault handler while
holding the page_table_lock.
> I'd prefer ptep_get_and_clear_and_flush(), then the arch part can do
> what's needed to get the final pte value. (if a single page is modified,
> otherwise the arch can define a suitable mmu_gather)
mmu_gather is the hook. ia64 for instance can create a gather that uses
the hardware tlb flush instruction to shootdown the entry across all cpus
and eliminates the race.
-ben
-
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/