cvs commit: src/sys/kern kern_synch.c src/sys/sys proc.h src/sys/i386/i386 genassym.c pmap.c swtch.s src/sys/i386/include pcb.h

Jeff Roberson jeff at FreeBSD.org
Tue Sep 30 01:11:37 PDT 2003


jeff        2003/09/30 01:11:36 PDT

  FreeBSD src repository

  Modified files:
    sys/kern             kern_synch.c 
    sys/sys              proc.h 
    sys/i386/i386        genassym.c pmap.c swtch.s 
    sys/i386/include     pcb.h 
  Log:
   - On my Pentium4-M laptop, invalpg takes ~1100 cycles if the page is found in
     the TLB and ~1600 if it is not.  Therefore, it is more effecient to
     invalidate the TLB after operations that use CMAP rather than before.
   - So that the tlb is invalidated prior to switching off of a processor, we
     must change the switchin functions to switchout functions.
   - Remove td_switchout from the thread and move it to the x86 pcb.
   - Move the code that calls switchout into swtch.s.  These changes make this
     optimization truely x86 specific.
  
  Revision  Changes    Path
  1.143     +1 -1      src/sys/i386/i386/genassym.c
  1.438     +33 -33    src/sys/i386/i386/pmap.c
  1.143     +6 -1      src/sys/i386/i386/swtch.s
  1.50      +2 -1      src/sys/i386/include/pcb.h
  1.234     +0 -8      src/sys/kern/kern_synch.c
  1.348     +0 -1      src/sys/sys/proc.h


More information about the cvs-src mailing list