diff options
author | Andrea Bastoni <bastoni@cs.unc.edu> | 2010-09-28 08:55:21 -0400 |
---|---|---|
committer | Andrea Bastoni <bastoni@cs.unc.edu> | 2010-09-28 08:55:21 -0400 |
commit | acdf6100407bc743bab02f699eedf629b4eb4d9d (patch) | |
tree | 9a6309ddb3eaa31a88739ea8504466f30b52c15a | |
parent | 728e11fc0de9cee375fce98502b68aef3acff695 (diff) |
Bugfix: infinite loop upon timer disabling.
-rw-r--r-- | litmus/sched_npsf.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/litmus/sched_npsf.c b/litmus/sched_npsf.c index b322b0a5b362..25c71458fa2d 100644 --- a/litmus/sched_npsf.c +++ b/litmus/sched_npsf.c | |||
@@ -1019,7 +1019,7 @@ void npsf_hrtimers_cleanup(void) | |||
1019 | { | 1019 | { |
1020 | int cpu; | 1020 | int cpu; |
1021 | cpu_entry_t *entry; | 1021 | cpu_entry_t *entry; |
1022 | int redo = 0; | 1022 | int redo; |
1023 | 1023 | ||
1024 | if (!atomic_read(&timers_activated)) | 1024 | if (!atomic_read(&timers_activated)) |
1025 | return; | 1025 | return; |
@@ -1028,6 +1028,7 @@ void npsf_hrtimers_cleanup(void) | |||
1028 | 1028 | ||
1029 | /* prevent the firing of the timer on this cpu */ | 1029 | /* prevent the firing of the timer on this cpu */ |
1030 | do { | 1030 | do { |
1031 | redo = 0; | ||
1031 | for_each_online_cpu(cpu) { | 1032 | for_each_online_cpu(cpu) { |
1032 | entry = &per_cpu(npsf_cpu_entries, cpu); | 1033 | entry = &per_cpu(npsf_cpu_entries, cpu); |
1033 | 1034 | ||