Date: Wed, 1 Sep 2010 15:17:05 -0700 From: mdf@FreeBSD.org To: John Baldwin <jhb@freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r212115 - head/sys/kern Message-ID: <AANLkTimGNby3aTNjcQhr%2Bq0ZVFXMw_hRtxNBcSUu4=hz@mail.gmail.com> In-Reply-To: <201009011731.12499.jhb@freebsd.org> References: <201009012032.o81KWmu5080032@svn.freebsd.org> <201009011731.12499.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Sep 1, 2010 at 2:31 PM, John Baldwin <jhb@freebsd.org> wrote: > On Wednesday, September 01, 2010 4:32:48 pm Matthew D Fleming wrote: >> Author: mdf >> Date: Wed Sep =A01 20:32:47 2010 >> New Revision: 212115 >> URL: http://svn.freebsd.org/changeset/base/212115 >> >> Log: >> =A0 Fix a bug with sched_affinity() where it checks td_pinned of another >> =A0 thread in a racy manner, which can lead to attempting to migrate a >> =A0 thread that is pinned to a CPU. =A0Instead, have sched_switch() dete= rmine >> =A0 which CPU a thread should run on if the current one is not allowed. >> >> =A0 KASSERT in sched_bind() that the thread is not yet pinned to a CPU. >> >> =A0 KASSERT in sched_switch() that only migratable threads or those movi= ng >> =A0 due to a sched_bind() are changing CPUs. >> >> =A0 sched_affinity code came from jhb@. >> >> =A0 MFC after: =A02 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTimGNby3aTNjcQhr%2Bq0ZVFXMw_hRtxNBcSUu4=hz>