svn commit: r243764 - head/sys/x86/x86

Andriy Gapon avg at FreeBSD.org
Thu Dec 13 11:00:30 UTC 2012


on 06/12/2012 22:40 John Baldwin said the following:
> 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?
> 

Will do.

-- 
Andriy Gapon


More information about the svn-src-head mailing list