Bug in calcru in he 6.2 and 6.3 kernels

Xin LI delphij at delphij.net
Mon Jul 7 20:36:27 UTC 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Kris Kennaway wrote:
| 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.

Perhaps we should mark it as broken using #error?  After all the ULE
changes in 7.x is amazing and we do not want to have users to obtain bad
impressions from the 6.x versions...

I am not sure but some explicit warning message saying "ULE has been
revamped in FreeBSD 7.x+ and will not be MFC'ed back to 6.x, please use
SCHED_4BSD or upgrade to 7.x." seems to be better than having them to
pursue the mailing list archive...

Cheers,
- --
Xin LI <delphij at delphij.net>	http://www.delphij.net/
FreeBSD - The Power to Serve!
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (FreeBSD)

iEYEARECAAYFAkhyfjYACgkQi+vbBBjt66CdLQCfet8ls7tfg5jV5I7gSOw8QwhC
maoAn2sBwjfoOBhFt6u5fELK9X6XMp0A
=Bxr3
-----END PGP SIGNATURE-----


More information about the freebsd-hackers mailing list