DragonFly kernel List (threaded) for 2004-01
Re: scheduler again
:Despite what I thought, we need to touch kern/kern_synch.c.
:So here are some proposals and questions.
:I'd like to move updatepri, mi_switch, setrunnable and clrrunnable
:from _synch.c to _switch.c. (So they are later part of some struct scheduler
:For schedcpu, _wakeup I want some hook of the form, say
:void schupdstats(proc *, int); /* scheduler specific stats update routine */
:where the int argument tells the routine how it was called
:(regular timer interrupt at what stage, asynchronous wakeup,...).
:I'm very unsure how to deal with schedclock and resetpriority, since they depend
:on the estcpu macros, but they would need at least some hook of the same form.
:And I'd rather like to have a chgrunqueue(proc *, u_short) in _switch.c
:as a short cut for remrunqueue(p), p->rtprio.prio = newpriority, setrunqueue(p)
:When these things are pinned down, we could add a sched.h and let proc.h
:include it for the beginning. Later on include it only in the relevant
:Any comments ?
:Campus der Max-Planck-Institute Tübingen
:Netzwerk- und Systemadministration
:Tel: +49 7071 601 598
:Fax: +49 7071 601 616
All right. I think the next step for you is to start producing
patch sets. I can comment on the patch sets with more specificity.
Try to find nice logical points to demarc the scheduler-independant
code from teh scheduler-dependant code.