Hi,

I found in top(1) a call to nice(3) that I think that should be changed to 
setpriority(2). When given the -q flag the manpage claims that top will be 
reniced to -20.
This is implemented trough nice(3) taking advantage that a program are loaded 
with 0 niceness priority, so decrementing 20 will give the desired result.
As the goal is to set to a specific priority, I think it could simply use 
setpriority(2).

The patch bellow does that.


Index: usr.bin/top/top.c
===================================================================
RCS file: /cvs/src/usr.bin/top/top.c,v
retrieving revision 1.88
diff -u -p -r1.88 top.c
--- usr.bin/top/top.c   5 Nov 2015 17:17:13 -0000       1.88
+++ usr.bin/top/top.c   17 Sep 2016 16:16:18 -0000
@@ -227,7 +227,7 @@ parseargs(int ac, char **av)
                        /* only allow this if user is really root */
                        if (getuid() == 0) {
                                /* be very un-nice! */
-                               (void) nice(-20);
+                               (void) setpriority(PRIO_PROCESS, 0, -20);
                                break;
                        }
                        new_message(MT_delayed,

Reply via email to