The following commit has been merged into the sched/fifo branch of tip: Commit-ID: c9ec0524706e580c78c61e38ef5e7761ed2f8485 Gitweb: https://git.kernel.org/tip/c9ec0524706e580c78c61e38ef5e7761ed2f8485 Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx> AuthorDate: Tue, 21 Apr 2020 12:09:13 +02:00 Committer: Peter Zijlstra <peterz@xxxxxxxxxxxxx> CommitterDate: Mon, 15 Jun 2020 14:10:21 +02:00 sched,drbd: Convert to sched_set_fifo*() Because SCHED_FIFO is a broken scheduler model (see previous patches) take away the priority field, the kernel can't possibly make an informed decision. In this case, use fifo_low, because it only cares about being above SCHED_NORMAL. Effectively changes prio from 2 to 1. Cc: axboe@xxxxxxxxx Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx> Reviewed-by: Ingo Molnar <mingo@xxxxxxxxxx> --- drivers/block/drbd/drbd_receiver.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c index 3a3f2b6..140fd98 100644 --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c @@ -6019,9 +6019,8 @@ int drbd_ack_receiver(struct drbd_thread *thi) unsigned int header_size = drbd_header_size(connection); int expect = header_size; bool ping_timeout_active = false; - struct sched_param param = { .sched_priority = 2 }; - rv = sched_setscheduler(current, SCHED_RR, ¶m); + rv = sched_set_fifo_low(current); if (rv < 0) drbd_err(connection, "drbd_ack_receiver: ERROR set priority, ret=%d\n", rv);
![]() |