[PATCH] [2.4] [RHEL] Backport of benh's PTE mgmt changes

Benjamin Herrenschmidt benh at kernel.crashing.org
Thu Jan 8 10:58:14 EST 2004


On Thu, 2004-01-08 at 08:43, olof at austin.ibm.com wrote:
> On Tue, 6 Jan 2004 olof at forte.austin.ibm.com wrote:
>
> > I'll try to see how visible is with workloads. I'm not sure how
> > syncronization could be acheived without either RCU or IPI support, so
> > hopefully it won't be a big hit.
>
> No visible impact on SPECweb, as far as I can tell. SDET didn't show much
> a difference either, but it's hard to tell since numbers vary quite a bit.
>
> But anyway: The solution is too obvious: A rwlock, with hash_page taking
> it for reading, and pte_freelist_batch taking it for writing momentarily
> to syncronize with the readers. This way, batch free only has to wait for
> all hash_page()s to complete, and no IPI is needed. Code size of hash_page
> is largely unaltered from the old page_table_lock spin_locks.

A global rwlock may not be that good as it means global cache ping pong
while the page table lock was per-mm ... except if you put the rwlock in
the mm (like in the mmu_context), but then you need the mm pointer in
pte_free etc...

Ben.


** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/





More information about the Linuxppc64-dev mailing list