All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: Jan Kiszka <jan.kiszka@domain.hid>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] New scheduler class
Date: Fri, 02 Apr 2010 11:27:16 +0200	[thread overview]
Message-ID: <4BB5B874.5090904@domain.hid> (raw)
In-Reply-To: <4BB5B7C1.4020301@domain.hid>

Jan Kiszka wrote:
> Jan Kiszka wrote:
>> Henri Roosen wrote:
>>> We have the same requirement for which we also have no solution. One
>>> of our threads has a configurable priority of which at the lowest
>>> priority the thread should behave like an idle task that is only
>>> scheduled when all xenomai threads are idle and also the Linux domain
>>> is idle. The thread might use rtdm-drivers and xenomai mutexes and
>>> therefore has to be moved to the Xenomai domain. But then it always
>>> has higher priority than any threads scheduled in linux.
>> That's not true, Xenomai threads can run in non-RT scheduling classes as
>> well. They may just gain RT priority while holding some lock that is
>> requested by a RT thread as well.
>>
>>> Actually, when seen from the first domain, this requirement would be
>>> solved when we could set a first domain priority for the second
>>> domain... Gilles, is that what is meant by the SCHED_IDLE policy for
>>> Linux?
>> "nice +20", thus a very small CPU share if other task are runnable.
>>
>> Note that "true" SCHED_IDLE, ie. no CPU share if some other task is
>> runnable, could only work if we forbid access to Linux syscalls for such
>> tasks - not feasible.
> 
> Actually, "nothing is impossible": That task could gain normal Linux
> priority while running the syscall. But it would have to loose
> immediately again when leaving Linux. So no lazy mode switching like we
> do for other Xenomai tasks, otherwise these tasks would loose there idle
> property after the first syscall.
> 
> The point is that things get fairly special and maybe invasive to
> Xenomai, and I'm still not seeing the practical benefit compared to nice
> 19 or 20.

I think the problem is not to have a "true" SCHED_IDLE when running
under Linux scheduler, but rather when running under Xenomai scheduler.
And that can probably be arranged by implementing the SCHED_IDLE policy
for Xenomai.


-- 
					    Gilles.


  reply	other threads:[~2010-04-02  9:27 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-01 23:08 [Xenomai-help] New scheduler class Andreas Glatz
2010-04-02  0:08 ` Jan Kiszka
2010-04-02  0:11   ` Gilles Chanteperdrix
2010-04-02  7:58     ` Henri Roosen
2010-04-02  8:06       ` Gilles Chanteperdrix
2010-04-02  8:27         ` Gilles Chanteperdrix
2010-04-02  9:18       ` Jan Kiszka
2010-04-02  9:24         ` Jan Kiszka
2010-04-02  9:27           ` Gilles Chanteperdrix [this message]
2010-04-02  9:32             ` Henri Roosen
2010-04-02  9:34               ` Gilles Chanteperdrix
2010-04-02  9:43                 ` Henri Roosen
2010-04-02 10:07                   ` Jan Kiszka
2010-04-04 23:04                     ` Andreas Glatz
2010-04-06  6:45                       ` Jan Kiszka
2010-04-15  0:19                         ` Andreas Glatz
2010-04-15  9:02                           ` Philippe Gerum
2010-04-20 14:12                             ` Andreas Glatz
2010-04-23 10:54                               ` Philippe Gerum
2010-09-30 12:52                                 ` Henri Roosen
2010-09-30 13:29                                   ` Gilles Chanteperdrix
2010-10-04 11:02                                   ` Philippe Gerum
2010-10-04 13:14                                     ` Henri Roosen
2010-10-10 21:17                                   ` Philippe Gerum
2010-04-15 10:46                           ` Philippe Gerum
2010-04-15 12:36                             ` Andreas Glatz
2010-04-15 12:40                               ` Gilles Chanteperdrix
2010-04-15 12:59                                 ` Andreas Glatz
2010-04-15 13:15                                   ` Gilles Chanteperdrix
2010-04-16 15:29                                     ` Andreas Glatz
2010-04-16 15:57                                       ` Gilles Chanteperdrix
2010-04-02 10:00                 ` Jan Kiszka
2010-04-02 10:02                   ` Gilles Chanteperdrix
2010-04-02  8:26     ` Jan Kiszka
2010-04-02  8:29       ` Gilles Chanteperdrix
2010-04-02  8:58         ` Jan Kiszka
2010-04-02  9:03           ` Jan Kiszka
2010-04-02  9:24             ` Gilles Chanteperdrix
2010-04-02 10:02               ` Jan Kiszka
2010-04-02 10:05                 ` Gilles Chanteperdrix
2010-04-02 10:12                   ` Jan Kiszka
     [not found] <mailman.6356.1286778008.12503.xenomai@xenomai.org>
2010-10-11  9:31 ` Andreas Glatz
2010-10-11 15:35   ` Henri Roosen
2010-10-12  7:16     ` Henri Roosen
2011-03-28 10:56       ` Henri Roosen
2011-03-28 11:44         ` Philippe Gerum
2011-05-01 15:01         ` Philippe Gerum
2011-05-02  8:58           ` Henri Roosen
2011-05-05 13:55             ` Philippe Gerum
2011-05-05 14:40               ` Henri Roosen
2011-06-28  9:26                 ` Henri Roosen
2011-06-28  9:33                   ` Philippe Gerum

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BB5B874.5090904@domain.hid \
    --to=gilles.chanteperdrix@xenomai.org \
    --cc=jan.kiszka@domain.hid \
    --cc=xenomai@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.