[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nptl] Re: http://bugme.osdl.org/show_bug.cgi?id=3770
- To: Nick Piggin <piggin@cyberone.com.au>
- Subject: [nptl] Re: http://bugme.osdl.org/show_bug.cgi?id=3770
- From: Sebastien Decugis <sebastien.decugis@ext.bull.net>
- Date: Thu, 09 Dec 2004 15:00:21 +0100
- Cc: nptl@bullopensource.org
- Delivered-To: "bullopensource.org:nptl"@ml.online.net
- Delivered-To: bullopensource.org-nptl@bullopensource.org
- In-Reply-To: <41B83895.6030401@cyberone.com.au>
- Organization: Bull S.A.
- References: <1102071900.14792.81.camel@decugiss.frec.bull.fr> <41B6368F.9060704@cyberone.com.au> <1102495648.3613.39.camel@decugiss.frec.bull.fr> <41B6C2D4.5040705@cyberone.com.au> <1102497754.3644.1.camel@decugiss.frec.bull.fr> <41B6D544.1010106@cyberone.com.au> <1102501896.3644.5.camel@decugiss.frec.bull.fr> <41B6D824.80804@cyberone.com.au> <41B6DA44.4020100@cyberone.com.au> <1102502987.3644.7.camel@decugiss.frec.bull.fr> <41B6DEC1.9050506@cyberone.com.au> <1102523077.3644.42.camel@decugiss.frec.bull.fr> <41B8115C.30509@cyberone.com.au> <41B82435.7020802@cyberone.com.au> <1102590314.3644.107.camel@decugiss.frec.bull.fr> <41B83895.6030401@cyberone.com.au>
- Reply-to: nptl@bullopensource.org
- Sender: nptl_owner@bullopensource.org
> >What is your opinion?
> >
> >
>
> My opinion is that it is much nicer if we are able to keep it as per-cpu.
>
> I believe Ingo, Linus, etc. agreed that this was a valid interpretation
> of the relevant standards. I haven't personally looked myself, but I suspect
> that there would be a *very* large opposition to making the RT list global.
>
> It would be harmful to scheduler scalability and simplicity.
This means that specifying the tasks priority and the scheduling policy
is useless on SMP machines... As you won't get the expected behavior. I
think this can lead to random hangs in RT applications.
I don't know the kernel internals, but I think there already is a
mechanism to move processes from a CPU to another. In case of SCHED_RR
or SCHED_FIFO policy, my opinion is that you'd have to use the whole
pool of resources -- otherwise you cannot guarantee that the higher
process will execute in priority on the lower process.
Consider the following situation in SCHED_RR policy:
CPU A:
Process 1 priority 20
Process 2 priority 25
CPU B:
Process 3 priority 30
Process 4 priority 35
In this situation, with the current kernel, you'd have a priority-25
process running whereas a priority-30 is waiting? I think this is
clearly a bug!
The default scheduling policy, SCHED_OTHERS, is implementation-defined;
but for applications using SCHED_FIFO or SCHED_RR, I think such behavior
is unacceptable. If scalability or simplicity suffers from this, this
can't be helped IMHO, it is better than having hangs in the application
because of the scheduler.
I still consider this as a bug, and I'd like to hear from RT
programmers...
Regards,
Seb.
--
-------------------------------
Sebastien DECUGIS
NPTL Test & Trace Project
http://nptl.bullopensource.org/
"You may fail if you try.
You -will- fail if you don't."
Liste de diffusion nptl
Pour se désinscrire : mailto:nptl_request@bullopensource.org?subject=unsubscribe