|
Message-ID: <CACSoc7iNXHbPpqhh5Sfcsjqx7xcyKmWJRyXFH2KRwP1ssP-q5g@mail.gmail.com>
Date: Tue, 1 Mar 2016 00:50:59 -0500
From: James Marshall <jcmarsh@...ail.gwu.edu>
To: musl@...ts.openwall.com
Subject: Re: sched_* implemented?
That works! Thank you for the help.
The way glibc / sched_setscheduler are setup is very... interesting.
James
On Mon, Feb 29, 2016 at 11:59 PM, Rich Felker <dalias@...c.org> wrote:
> On Mon, Feb 29, 2016 at 11:32:34PM -0500, James Marshall wrote:
> > Hi,
> >
> > I'm working on a realtime application and am trying to use musl. I would
> > like to call sched_setscheduler, but it looks like this is just a stub in
> > musl.
> >
> > However,
> >
> http://nsz.repo.hu/git/?p=musl-tables;a=blob_plain;f=tab_posix.html;hb=HEAD
> > has it marked as implemented. Am I missing something? Is there a patch
> > available?
> >
> > If there is not, any idea of how difficult it would be for me to add it
> in?
> > Or would I be better off using syscall directly instead?
> >
> > Your help and time is appreciated.
>
> The reason it doesn't do anything is that Linux does not provide a way
> to set scheduling parameters for a _process_, only for threads. The
> sched_setscheduler syscall is documented as taking a pid but actually
> takes a thread id and only operates on that thread. glibc just ignores
> this and provides sched_* functions that do the wrong thing.
>
> Fortunately there's an easy fix: use pthread_setschedparam, and
> pthread_self to get the pthread_t value you need to pass to it.
>
> Rich
>
Content of type "text/html" skipped
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.