Re: Protect PGD...PTE walking in ivt.S

From: Christoph Lameter <clameter_at_sgi.com>
Date: 2006-04-22 03:13:40
On Fri, 21 Apr 2006, Zoltan Menyhart wrote:

> - it scales well

mmap_sem is the major performance bottleneck for page faults at this time 
because it creates a bouncing cacheline. Figure out a way to avoid that to 
increase performance.

> 4. On one hand, as "free_pgtables()" cannot run in the mean time,
>   there is no need to re-read pgd[i] -> pud[j] -> pmd[k].
>   On the other hand, the swapper is not excluded => we keep re-checking
>   pte[l] and purging the freshly inserted TLB entry if it has been changed.

The walking of pgd/pud/pmd can happen anytime through the mmu on many
architectures. It is therefore not protectable by any lock. 

free_pgtables() is run when all processes in a mm_struct have terminated 
or when all vmas from an area have been removed.

There can be no one using the page tables.
-
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 Sat Apr 22 03:14:18 2006

This archive was generated by hypermail 2.1.8 : 2006-04-22 03:14:32 EST