Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 07 Jul 2008 20:33:55 +0200
From:      Kris Kennaway <kris@FreeBSD.org>
To:        "Murty, Ravi" <ravi.murty@intel.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Bug in calcru in he 6.2 and 6.3 kernels
Message-ID:  <48726193.1080807@FreeBSD.org>
In-Reply-To: <AEBCFC23C0E40949B10BA2C224FC61B007A3253D@orsmsx416.amr.corp.intel.com>
References:  <AEBCFC23C0E40949B10BA2C224FC61B007A3253D@orsmsx416.amr.corp.intel.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Murty, Ravi wrote:
> Hello everyone,
> 
>  
> 
> Finally found what my last problem was. We were running top in a loop
> and running some workloads that called sched_bind() to bind threads to
> specific CPUs. The problem was that (and I am using ULE) sched_bind
> calls a function to notify another CPU of a thread and then mi_switches
> out of it. Since mi_switch sets the "oncpu" field of the thread to NOCPU
> and given the thread is still running, calcru would come in and assert
> the fact that "If I am running I better no be on NOCPU".. It appears
> that in other parts of the kernel (e.g. forward_signal) this is
> acceptable (i.e. it is okay to be running and oncpu is NOCPU). 
> 
>  
> 
> Thanks
> Ravi

Don't use ULE in 6.x, it's broken and will not be fixed.

Kris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48726193.1080807>