John-Mark Gurney wrote:
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);
#endif


it 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]"

Reply via email to