Re: [PATCH] make setpriority POSIX compliant; introducePRIO_THREAD extension

From: Peter Zijlstra
Date: Mon Sep 01 2008 - 11:19:49 EST


On Mon, 2008-09-01 at 17:08 +0200, Peter Zijlstra wrote:
> On Mon, 2008-09-01 at 16:42 +0200, Denys Vlasenko wrote:
> > On Mon, 2008-09-01 at 16:12 +0200, Denys Vlasenko wrote:
> > > Patch is run tested. I will post test program etc as a reply.
> >
> > Looks like Evolution word-wrapped the patch. Let me try again.
>
> Patch looks simple enough, although a few comments below.
> Also, I guess the glibc people (Ulrich added to CC) might have an
> opinion.
>
> > Signed-off-by: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
> > --

> > + case PRIO_PROCESS:
> > + if (who)
> > + pid = find_vpid(who);
> > + else {
> > + pid = task_pid(current);
> > + who = current->pid;
> > + }
> > + do_each_pid_thread(pid, PIDTYPE_PID, p) {
> > + if (who == p->pid || who == p->tgid) {
> > + error = set_one_prio(p, niceval, error);
> > + }
> > + } while_each_pid_thread(pid, PIDTYPE_PID, p);
>
> I worry about destroying the return value here, support one thread
> fails, but the next succeeds, should we still report failure?

Ok - got fooled by this funny set_one_prio() function. It passes the old
error value and maintains it if no new error occurs (except for -ESRCH,
but I guess people know wth they're doing).

So I'll retract my concern.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/