On Saturday, December 01, 2012 1:16:14 pm Andriy Gapon wrote:
> Author: avg
> Date: Sat Dec  1 18:16:14 2012
> New Revision: 243764
> URL: http://svnweb.freebsd.org/changeset/base/243764
> 
> Log:
>   ioapic_program_intpin: program high bits before low bits
>   
>   Programming the low bits has a side-effect if unmasking the pin if it is
>   not disabled.  So if an interrupt was pending then it would be delivered
>   with the correct new vector but to the incorrect old LAPIC.
>   
>   This fix could be made clearer by preserving the mask bit while
>   programming the low bits and then explicitly resetting the mask bit
>   after all the programming is done.
>   
>   Probability to trip over the fixed bug could be increased by bootverbose
>   because printing of the interrupt information in ioapic_assign_cpu
>   lengthened the time window during which an interrupt could arrive while
>   a pin is masked.

Can you expand the comment to say that you write 'low' second since it may 
clear the masked bit?

-- 
John Baldwin
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to