[tip: sched/fifo] sched,drbd: Convert to sched_set_fifo*()

From: tip-bot2 for Peter Zijlstra
Date: Fri Jul 24 2020 - 04:34:02 EST


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, &param);
+ rv = sched_set_fifo_low(current);
if (rv < 0)
drbd_err(connection, "drbd_ack_receiver: ERROR set priority, ret=%d\n", rv);