[lkml]   [2018]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/2] Fix watchdogd wakeup deferral on RT
The following two patches solve an issue reported by Steffen Trumtrar
and Tim Sander to the linux-rt-users mailing list. Namely, the wakeup
of the watchdogd thread being starved by an RT task due to the hrtimer
deferral through ktimersoftd (on PREEMPT_RT_FULL).

The first patch adjusts the kthread_worker locking to make use of a raw
spinlock, making it suitable for work item queueing from hardirq context
on PREEMPT_RT. This patch can be applied directly to mainline without
any functional change.

The second patch adjusts the hrtimer used by the watchdog core to be a
_HARD timer (and thus not deferred through ktimersoftd w/ PREEMPT_RT).
This patch depends on hrtimer patches carried in the RT patch, and so
should therefore land there.

Cc: Guenter Roeck <>
Cc: Steffen Trumtrar <>
Cc: Tim Sander <>

Julia Cartwright (2):
kthread: convert worker lock to raw spinlock
watchdog, rt: prevent deferral of watchdogd wakeup

drivers/watchdog/watchdog_dev.c | 2 +-
include/linux/kthread.h | 2 +-
kernel/kthread.c | 42 ++++++++++++++++-----------------
3 files changed, 23 insertions(+), 23 deletions(-)


 \ /
  Last update: 2018-09-28 23:05    [W:0.183 / U:3.284 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site