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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to