Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 205394
b: refs/heads/master
c: d7c5473
h: refs/heads/master
v: v3
  • Loading branch information
Don Zickus authored and Frederic Weisbecker committed May 12, 2010
1 parent 3f718c4 commit 0c1dc77
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 10f9014912a2b1cb59c39cdea777e6d9afa8f17e
refs/heads/master: d7c547335fa6b0090fa09c46ea0e965ac273a27e
7 changes: 4 additions & 3 deletions trunk/kernel/watchdog.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ int watchdog_enabled;
int __read_mostly softlockup_thresh = 60;

static DEFINE_PER_CPU(unsigned long, watchdog_touch_ts);
static DEFINE_PER_CPU(bool, watchdog_nmi_touch);
static DEFINE_PER_CPU(struct task_struct *, softlockup_watchdog);
static DEFINE_PER_CPU(struct hrtimer, watchdog_hrtimer);
static DEFINE_PER_CPU(bool, softlockup_touch_sync);
Expand Down Expand Up @@ -139,6 +140,7 @@ void touch_all_softlockup_watchdogs(void)

void touch_nmi_watchdog(void)
{
__get_cpu_var(watchdog_nmi_touch) = true;
touch_softlockup_watchdog();
}
EXPORT_SYMBOL(touch_nmi_watchdog);
Expand Down Expand Up @@ -201,10 +203,9 @@ void watchdog_overflow_callback(struct perf_event *event, int nmi,
struct pt_regs *regs)
{
int this_cpu = smp_processor_id();
unsigned long touch_ts = per_cpu(watchdog_touch_ts, this_cpu);

if (touch_ts == 0) {
__touch_watchdog();
if (__get_cpu_var(watchdog_nmi_touch) == true) {
__get_cpu_var(watchdog_nmi_touch) = false;
return;
}

Expand Down

0 comments on commit 0c1dc77

Please sign in to comment.