ithread priority question...
Julian Elischer
julian at elischer.org
Mon Jun 21 07:49:15 GMT 2004
On Mon, 21 Jun 2004, Bruce Evans wrote:
> On Sun, 20 Jun 2004, Julian Elischer wrote:
>
> > In swi_add, the priority is multiplied by PPQ.
> > This is a layering violation really because PPQ should only be known
> > within the scheduler.... but..... "Why multiply by PPQ inthe first
> > place?" we are not using the system run queues for interrupt threads.
> >
> > (PPQ = Priorities Per Queue).
> >
> > Without this you can remove runq.h from proc.h and include it only in
> > the scheduler related files.
>
> I agree that this makes no sense. Apart from the layering violation,
> It seems to just waste priority space. The wastage is not just cosmetic
> since someone increased the number of SWIs although there was no room
> for expansion.
>
> Hardware ithread priorities are also separated by 4. The magic number 4
> is encoded in their definitions in priority.h. It's not clear if the 4 is
> PPQ or just room for expansion without changing the ABI. Preserving this
> ABI doesn't seem very important.
seems pointless to me..
It looks to me that at on stage someone was considerring using the
standard run-queue code to make interrupt threads runnable.
They wanted each interrupt thread to eb on a differen queue and to use
the ffs() code to find the next one to run.
Feel free to fix it:-) I'm off to bed but I'll look at it again
tomorrow if you haven't.
>
> Bruce
>
More information about the freebsd-current
mailing list