svn commit: r216955 - head/usr.sbin/rtprio
Alexander Best
arundel at freebsd.org
Thu Jan 6 21:42:43 UTC 2011
On Thu Jan 6 11, John Baldwin wrote:
> On Thursday, January 06, 2011 4:10:17 pm Alexander Best wrote:
> > On Thu Jan 6 11, Garrett Cooper wrote:
> > > On Thu, Jan 6, 2011 at 12:41 PM, Alexander Best <arundel at freebsd.org>
> wrote:
> > >
> > > ...
> > >
> > > > this causes problems when pid is -0:
> > > >
> > > > [id|rt]prio -t -0 and [id|rt]prio 10 -0 will try to run "0" via
> execvp().
> > > > beforehand however this will also trigger rtprio().
> > > >
> > > > a better solution would be to do:
> > > >
> > > > if (argv[2][0] == '-') {
> > > > proc = parseint(argv[2] + 1, "pid");
> > > > if (rtprio(RTP_SET, proc, &rtp) != 0)
> > > > err(1, "RTP_SET");
> > > > } else {
> > > > execvp(argv[2], &argv[2]);
> > > > err(1, "%s", argv[2]);
> > > > }
> > >
> > > How did you get a pid of -0?
> >
> > pid 0 stands for the current process. see rptio(2).
>
> Note that that usage is rather pointless since it means you apply rtprio to
> the 'rtprio' process that is about to exit. :)
yeah but at least it makes the usage of -X consistent. ;) also consider the
following: the current shell has idle priority and you want to run rtprio in
normal priority. then rtprio -t -0 would be a neat way of doing
rtprio -t rtprio. ;) wel...not quite, because the priotity gets set to "NORMAL"
when rtprio is almost finished running. ;)
i admit using -0 for setting rtpio's own priority isn't very useful, but the
rtprio(1) manual states:
Pid of 0 means "the current process".
...so it better work. ;)
cheers.
alex
>
> --
> John Baldwin
--
a13x
More information about the svn-src-all
mailing list