Re: [kvm-devel] [PATCH] mmu notifiers #v3

From: Andrea Arcangeli
Date: Tue Jan 22 2008 - 09:44:00 EST


On Tue, Jan 22, 2008 at 04:12:34PM +0200, Avi Kivity wrote:
> Andrea Arcangeli wrote:
>> diff --git a/include/asm-generic/pgtable.h b/include/asm-generic/pgtable.h
>> --- a/include/asm-generic/pgtable.h
>> +++ b/include/asm-generic/pgtable.h
>> @@ -44,8 +44,10 @@
>> ({ \
>> int __young; \
>> __young = ptep_test_and_clear_young(__vma, __address, __ptep); \
>> - if (__young) \
>> + if (__young) { \
>> flush_tlb_page(__vma, __address); \
>> + mmu_notifier(age_page, (__vma)->vm_mm, __address); \
>> + } \
>> __young; \
>> })
>>
>
> I think that unconditionally doing
>
> __young |= mmu_notifier(test_and_clear_young, ...);
>
> allows hardware with accessed bits more control over what is going on.

Agreed, likely it'll have to be mmu_notifier_age_page().
--
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/