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.