cvs commit: src/sys/i386/i386 pmap.c

Alan Cox alc at cs.rice.edu
Sun Feb 1 12:53:04 PST 2004


On Sun, Feb 01, 2004 at 12:14:01PM -0800, Alan Cox wrote:
> alc         2004/02/01 12:14:01 PST
> 
>   FreeBSD src repository
> 
>   Modified files:
>     sys/i386/i386        pmap.c 
>   Log:
>   Eliminate all TLB shootdowns by pmap_pte_quick(): By temporarily pinning
>   the thread that calls pmap_pte_quick() and by virtue of the page queues
>   lock being held, we can manage PADDR1/PMAP1 as a CPU private mapping.
>   
>   The most common effect of this change is to reduce the overhead of the page
>   daemon on multiprocessors.
>   
>   In collaboration with:  tegge
>   
>   Revision  Changes    Path
>   1.462     +52 -13    src/sys/i386/i386/pmap.c

If you want to see the number of IPIs for TLB shootdown that are avoided
on an SMP, run "sysctl debug.PMAP1changed".  After running a buildworld
"-j4" on a machine configured with 148MB, I got

debug.PMAP1changed: 3148562


More information about the cvs-src mailing list