diff options
Diffstat (limited to 'kernel/softlockup.c')
-rw-r--r-- | kernel/softlockup.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/softlockup.c b/kernel/softlockup.c index 88796c330838..62996170311d 100644 --- a/kernel/softlockup.c +++ b/kernel/softlockup.c | |||
@@ -20,7 +20,7 @@ | |||
20 | 20 | ||
21 | #include <asm/irq_regs.h> | 21 | #include <asm/irq_regs.h> |
22 | 22 | ||
23 | static DEFINE_SPINLOCK(print_lock); | 23 | static DEFINE_ATOMIC_SPINLOCK(print_lock); |
24 | 24 | ||
25 | static DEFINE_PER_CPU(unsigned long, touch_timestamp); | 25 | static DEFINE_PER_CPU(unsigned long, touch_timestamp); |
26 | static DEFINE_PER_CPU(unsigned long, print_timestamp); | 26 | static DEFINE_PER_CPU(unsigned long, print_timestamp); |
@@ -149,7 +149,7 @@ void softlockup_tick(void) | |||
149 | 149 | ||
150 | per_cpu(print_timestamp, this_cpu) = touch_timestamp; | 150 | per_cpu(print_timestamp, this_cpu) = touch_timestamp; |
151 | 151 | ||
152 | spin_lock(&print_lock); | 152 | atomic_spin_lock(&print_lock); |
153 | printk(KERN_ERR "BUG: soft lockup - CPU#%d stuck for %lus! [%s:%d]\n", | 153 | printk(KERN_ERR "BUG: soft lockup - CPU#%d stuck for %lus! [%s:%d]\n", |
154 | this_cpu, now - touch_timestamp, | 154 | this_cpu, now - touch_timestamp, |
155 | current->comm, task_pid_nr(current)); | 155 | current->comm, task_pid_nr(current)); |
@@ -159,7 +159,7 @@ void softlockup_tick(void) | |||
159 | show_regs(regs); | 159 | show_regs(regs); |
160 | else | 160 | else |
161 | dump_stack(); | 161 | dump_stack(); |
162 | spin_unlock(&print_lock); | 162 | atomic_spin_unlock(&print_lock); |
163 | 163 | ||
164 | if (softlockup_panic) | 164 | if (softlockup_panic) |
165 | panic("softlockup: hung tasks"); | 165 | panic("softlockup: hung tasks"); |