All of lore.kernel.org
 help / color / mirror / Atom feed
From: Philippe Gerum <rpm@xenomai.org>
To: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Cc: Jan Kiszka <jan.kiszka@domain.hid>, xenomai-core <xenomai@xenomai.org>
Subject: Re: [Xenomai-core] [RFC] shadow threads with prio 0 / SCHED_NORMAL
Date: Fri, 21 Apr 2006 19:50:32 +0200	[thread overview]
Message-ID: <44491B68.5080905@domain.hid> (raw)
In-Reply-To: <17481.6439.664844.663463@domain.hid>

Gilles Chanteperdrix wrote:
> Philippe Gerum wrote:
>  > What I suggested was to let people create normal threads using 
>  > pthread_create (likely conforming to the SCHED_OTHER policy), then use 
>  > the redirected pthread_setschedparam syscall (i.e. always applied to the 
>  > current thread) to promote them as Xenomai shadows, but leave them in 
>  > their original scheduling class. The same goes for rt_task_shadow. This 
>  > would be explicit actions that would not leave much room for "surprises".
> 
> If I understand correctly, you mean that one should not be able to
> create real-time threads with pthread_create. My question was about what
> to do of explicit scheduling parameters passed to pthread_create through
> thread creation attributes.

Nope, this is obviously not what I meant... :o>

This is how one would create hybrids, without changing anything else to
the current interface:

     pthread_attr_init(&attr);
     ...
     pthread_attr_setschedpolicy(&attr,SCHED_OTHER);
     ...
     pthread_create(...,&attr,&foo,NULL);

and,

void *foo (void *cookie)
{
	/* The following call maps a shadow thread to "current", but 
       	    currently only accepts SCHED_FIFO, and would be changed to 
                            	    allow SCHED_OTHER/NORMAL. */
	pthread_setschedparam(...,SCHED_OTHER,...);
	/* OR, for the native API */
	rt_task_shadow(...,pri=0,...);
}

-- 

Philippe.


  reply	other threads:[~2006-04-21 17:50 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-19 22:01 [Xenomai-core] [RFC] shadow threads with prio 0 / SCHED_NORMAL Jan Kiszka
2006-04-20 12:55 ` Philippe Gerum
2006-04-21 10:46 ` Philippe Gerum
2006-04-21 15:21   ` Gilles Chanteperdrix
2006-04-21 15:47     ` Philippe Gerum
2006-04-21 16:00       ` Gilles Chanteperdrix
2006-04-21 16:41         ` Philippe Gerum
2006-04-21 17:40           ` Gilles Chanteperdrix
2006-04-21 17:50             ` Philippe Gerum [this message]
2006-04-21 18:18               ` Jan Kiszka
2006-04-21 21:40                 ` Philippe Gerum
2006-04-21 16:03     ` Jan Kiszka
2006-06-04 17:58 ` 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=44491B68.5080905@domain.hid \
    --to=rpm@xenomai.org \
    --cc=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.