Re: Page fault scalability patch V18: Drop first acquisition of ptl

From: Nick Piggin <nickpiggin_at_yahoo.com.au>
Date: 2005-03-04 04:19:35
Benjamin Herrenschmidt wrote:

>>However, if this pte_cmpxchg() thing is used for removing access, then
>>sparc64 can't use it.  In such a case a race in the TLB handler would
>>result in using an invalid PTE.  I could "spin" on some lock bit, but
>>there is no way I'm adding instructions to the carefully constructed
>>TLB miss handler assembler on sparc64 just for that :-)
>>
>
>Can't you add a lock bit in the PTE itself like we do on ppc64 hash
>refill ?
>
>

You don't want to do that for all architectures, as I said earlier.
eg. i386 can concurrently set the dirty bit with the MMU (which won't
honour the lock).

So you then need an atomic lock, atomic pte operations, and atomic
unlock where previously you had only the atomic pte operation. This is
disastrous for performance.


-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Received on Thu Mar 3 01:37:41 2005

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:36 EST