Re: Page aging broken in 2.6

From: Benjamin Herrenschmidt
Date: Fri Dec 26 2003 - 05:09:07 EST



> ARM would strictly need the flush as well. I seem to vaguely remember,
> however, that when this code went in there was some discussion about
> this very topic, and it was decided that the flush was not critical.
>
> Indeed, 2.4 seems to have the same logic concerning not flushing the
> PTE:
>
> /* Don't look at this pte if it's been accessed recently. */
> if ((vma->vm_flags & VM_LOCKED) || ptep_test_and_clear_young(page_table)) {
> mark_page_accessed(page);
> return 0;
> }

I can imagine that an architecture with TLBs will usually evict
the entry from the TLB sooner or later and the accessed bit will end
up beeing set again. On PPC, that isn't the case, the entry can well
stay a loooong time in the hash and if not evicted, _PAGE_ACCESSED
will never be set again.

Ben.


-
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/