diff options
Diffstat (limited to 'kernel/posix-cpu-timers.c')
| -rw-r--r-- | kernel/posix-cpu-timers.c | 8 | 
1 files changed, 4 insertions, 4 deletions
diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c index c9dcf98b446..bece7c0b67b 100644 --- a/kernel/posix-cpu-timers.c +++ b/kernel/posix-cpu-timers.c @@ -1420,19 +1420,19 @@ void run_posix_cpu_timers(struct task_struct *tsk)  	 * timer call will interfere.  	 */  	list_for_each_entry_safe(timer, next, &firing, it.cpu.entry) { -		int firing; +		int cpu_firing; +  		spin_lock(&timer->it_lock);  		list_del_init(&timer->it.cpu.entry); -		firing = timer->it.cpu.firing; +		cpu_firing = timer->it.cpu.firing;  		timer->it.cpu.firing = 0;  		/*  		 * The firing flag is -1 if we collided with a reset  		 * of the timer, which already reported this  		 * almost-firing as an overrun.  So don't generate an event.  		 */ -		if (likely(firing >= 0)) { +		if (likely(cpu_firing >= 0))  			cpu_timer_fire(timer); -		}  		spin_unlock(&timer->it_lock);  	}  }  |