Re: [PATCH] cfq + io priorities

From: Pavel Machek
Date: Tue Nov 18 2003 - 08:27:04 EST


Hi!

> > OTOH it might make sense to make "nice" command set
> > both by default.
>
> Yes, I can probably be talked into that.

Good.

> > > > > these end values are "special" - 0 means the process is only allowed to
> > > > > do io if the disk is idle, and 20 means the process io is considered
> > > >
> > > > So a process with ioprio == 0 can be forever starved. As it's not
> > >
> > > Yes
> >
> > If semaphore is held over disk io somewhere (quota code? journaling?)
> > you have ugly possibility of priority inversion there.
>
> Indeed yes. That's a general problem with all the io priorities though,
> RT io might end up waiting for nice 10 io etc. Dunno what to do about
> this yet...

Well, traditional (== scheduler) solution is not to have idle classes
and not guarantee anything about realtime classes.

At least idle class can not be used to hold important semaphore
forever (even low-priority prosses receive enough time not to hold
important semaphores too long)... I believe you should do the same (==
get rid of idle class for now, and clearly state that realtime ones
are not _guaranteed_ anything).
Pavel
--
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/