[Toybox] [PATCH] nice.c: don't bother with getpriority().
Rob Landley
rob at landley.net
Thu Aug 16 20:24:39 PDT 2012
On 08/15/2012 10:56 PM, Avery Pennarun wrote:
> The nice() syscall returns either 0 for success (very old Linux kernels) or
> the new niceness (which might be -1). To check whether it was successful,
> the nice(2) manpage says you should zero out errno, then if nice() returns
> -1, check that errno is nonzero, and if it is, that's your error.
>
> We could call getpriority(), but the way it was being done is incorrect.
> getpriority() includes the *absolute* priority of the process, while nice()
> adjusts the priority incrementally. To use getpriority() correctly, we'd
> have to get the priority before and after, and cap it at the
> kernel-dependent range, and make sure the *delta* is the one we requested
> with nice(2). This is unnecessary since the return value of nice() is
> perfectly sufficient.
I'm not sure the check for -1 is even required (would nice set errno
nonzero when there wasn't an error) but I left it in.
Thanks,
Rob
--
GNU/Linux isn't: Linux=GPLv2, GNU=GPLv3+, they can't share code.
Either it's "mere aggregation", or a license violation. Pick one.
More information about the Toybox
mailing list