cvs commit: src/sys/i386/i386 apic_vector.s src/sys/i386/isa
 atpic_vector.s
    Andy Farkas 
    andyf at speednet.com.au
       
    Sun Feb  1 17:18:00 PST 2004
    
    
  
On Wed, 28 Jan 2004, John Baldwin wrote:
>   Modified files:
>     sys/i386/i386        apic_vector.s
>     sys/i386/isa         atpic_vector.s
>   Log:
>   Optimize the i386 interrupt entry code to not reload the segment registers
>   if they already contain the correct kernel selectors.
What effect on performance does this change have? It seems to be a rather
significant change to an important code path, or am I totally confused..?
Also, you've changed:
 movl    $KDSEL, %eax ;  /* reload with kernel's data segment */
and,
 movl    $KPSEL, %eax ;  /* reload with per-CPU data segment */
to:
 mov     $KDSEL,%ax ;    /* load kernel ds, es and fs */
and,
 mov     $KPSEL,%ax ;
Is this part of the optimisations? Or, could you briefly explain this
change? Thank you.
--
 :{ andyf at speednet.com.au
        Andy Farkas
    System Administrator
   Speednet Communications
 http://www.speednet.com.au/
    
    
More information about the cvs-all
mailing list