sched,watchdog: Convert to sched_set_fifo()
authorPeter Zijlstra <peterz@infradead.org>
Tue, 21 Apr 2020 10:09:13 +0000 (12:09 +0200)
committerPeter Zijlstra <peterz@infradead.org>
Mon, 15 Jun 2020 12:10:24 +0000 (14:10 +0200)
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.

Effectively changes prio from 99 to 50.

Cc: wim@linux-watchdog.org
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Ingo Molnar <mingo@kernel.org>
drivers/watchdog/watchdog_dev.c

index 7e4cd34a8c20eaade5f4820eb4acca11b986b0b2..b9dc2c352151b3942a0a984c3513fa7fd926da7c 100644 (file)
@@ -1144,14 +1144,13 @@ void watchdog_dev_unregister(struct watchdog_device *wdd)
 int __init watchdog_dev_init(void)
 {
        int err;
-       struct sched_param param = {.sched_priority = MAX_RT_PRIO - 1,};
 
        watchdog_kworker = kthread_create_worker(0, "watchdogd");
        if (IS_ERR(watchdog_kworker)) {
                pr_err("Failed to create watchdog kworker\n");
                return PTR_ERR(watchdog_kworker);
        }
-       sched_setscheduler(watchdog_kworker->task, SCHED_FIFO, &param);
+       sched_set_fifo(watchdog_kworker->task);
 
        err = class_register(&watchdog_class);
        if (err < 0) {