svn commit: r212115 - head/sys/kern
mdf at FreeBSD.org
mdf at FreeBSD.org
Wed Sep 1 22:17:07 UTC 2010
On Wed, Sep 1, 2010 at 2:31 PM, John Baldwin <jhb at freebsd.org> wrote:
> On Wednesday, September 01, 2010 4:32:48 pm Matthew D Fleming wrote:
>> Author: mdf
>> Date: Wed Sep 1 20:32:47 2010
>> New Revision: 212115
>> URL: http://svn.freebsd.org/changeset/base/212115
>>
>> Log:
>> Fix a bug with sched_affinity() where it checks td_pinned of another
>> thread in a racy manner, which can lead to attempting to migrate a
>> thread that is pinned to a CPU. Instead, have sched_switch() determine
>> which CPU a thread should run on if the current one is not allowed.
>>
>> KASSERT in sched_bind() that the thread is not yet pinned to a CPU.
>>
>> KASSERT in sched_switch() that only migratable threads or those moving
>> due to a sched_bind() are changing CPUs.
>>
>> sched_affinity code came from jhb at .
>>
>> MFC after: 2 weeks
>
> Cool, I guess this fixed it in your tests then?
Yes, the stress case I pointed out in the earlier thread ran for quite
a few minutes before I killed it. Previously it would crash (with the
added assert) in a few seconds.
Thanks,
matthew
More information about the svn-src-head
mailing list