[BUG] sched: don't leave 3 lasts tasks unprocessed when niced tasks are present

When there are niced tasks, we would only process #tasks/4 per
turn, without taking care of running #tasks when #tasks was below
4, leaving those tasks waiting for a few other tasks to push them.

The fix simply consists in checking (#tasks+3)/4.
diff --git a/src/task.c b/src/task.c
index b4e2b97..b46420a 100644
--- a/src/task.c
+++ b/src/task.c
@@ -182,7 +182,7 @@
 		max_processed = 200;
 
 	if (likely(niced_tasks))
-		max_processed /= 4;
+		max_processed = (max_processed + 3) / 4;
 
 	expire = *next;
 	eb = eb32_lookup_ge(&rqueue, rqueue_ticks - TIMER_LOOK_BACK);