Devesh Shah wrote this message on Thu, Nov 04, 2004 at 15:22 -0800:
Based on the SYSINIT framework, I have made ULE scheduler as a loadable module but have not quite figured how to migrate from default 4bsd to newly loaded ule scheduler or is it possible at all.
As someone suggested, switches schedulers would be very complex..
what would be much more doable is require a scheduler module loaded by loader, and then select which scheduler from the loader... (though I don't know how many ifdef's outside scheduler modules exist today)..
ONE
in kern_kse.c:
td->td_pflags &= ~TDP_CAN_UNBIND;
td2 = thread_schedule_upcall(td, ku);
#ifdef SCHED_4BSD
if (flags & SW_INVOL || nextthread) {
setrunqueue(td2, SRQ_YIELDING);
} else {
/* Keep up with reality.. we have one extra thread
* in the picture.. and it's 'running'.
*/
return td2;
}
#else
setrunqueue(td2, SRQ_YIELDING);
#endifit would be safe to always use the Non-4bsd path
_______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"

