summaryrefslogtreecommitdiff
path: root/kernel/watchdog.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-09-12 11:40:05 (GMT)
committerIngo Molnar <mingo@elte.hu>2011-09-18 12:34:07 (GMT)
commitcba9bd22a5f8f857534b9a7f3fb3cafa0ac5fb75 (patch)
tree47cd0ede22b4e3624dd6db0ffe2b3d15fb87fbf6 /kernel/watchdog.c
parent51887c8230d57c4d9cc68e3784c52c8f0a708655 (diff)
downloadlinux-fsl-qoriq-cba9bd22a5f8f857534b9a7f3fb3cafa0ac5fb75.tar.xz
watchdog: Drop FIFO policy in exit path
When the watchdog thread exits it runs through the exit path with FIFO priority. There is no point in doing so. Switch back to SCHED_NORMAL before exiting. Cc: Don Zickus <dzickus@redhat.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/alpine.LFD.2.02.1109121337461.2723@ionos Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/watchdog.c')
-rw-r--r--kernel/watchdog.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index e952a13..d680381 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
@@ -321,7 +321,7 @@ static enum hrtimer_restart watchdog_timer_fn(struct hrtimer *hrtimer)
*/
static int watchdog(void *unused)
{
- static struct sched_param param = { .sched_priority = MAX_RT_PRIO-1 };
+ struct sched_param param = { .sched_priority = MAX_RT_PRIO-1 };
struct hrtimer *hrtimer = &__raw_get_cpu_var(watchdog_hrtimer);
sched_setscheduler(current, SCHED_FIFO, &param);
@@ -350,7 +350,8 @@ static int watchdog(void *unused)
set_current_state(TASK_INTERRUPTIBLE);
}
__set_current_state(TASK_RUNNING);
-
+ param.sched_priority = 0;
+ sched_setscheduler(current, SCHED_NORMAL, &param);
return 0;
}