diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-05-11 14:44:27 +0200 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-05-11 14:44:31 +0200 | 
| commit | 41fb454ebe6024f5c1e3b3cbc0abc0da762e7b51 (patch) | |
| tree | 51c50bcb67a5039448ddfa1869d7948cab1217e9 /kernel/posix-cpu-timers.c | |
| parent | 19c1a6f5764d787113fa323ffb18be7991208f82 (diff) | |
| parent | 091bf7624d1c90cec9e578a18529f615213ff847 (diff) | |
Merge commit 'v2.6.30-rc5' into core/iommu
Merge reason: core/iommu was on an .30-rc1 base,
              update it to .30-rc5 to refresh.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel/posix-cpu-timers.c')
| -rw-r--r-- | kernel/posix-cpu-timers.c | 17 | 
1 files changed, 9 insertions, 8 deletions
diff --git a/kernel/posix-cpu-timers.c b/kernel/posix-cpu-timers.c index 8e5d9a68b02..bece7c0b67b 100644 --- a/kernel/posix-cpu-timers.c +++ b/kernel/posix-cpu-timers.c @@ -18,7 +18,7 @@ void update_rlimit_cpu(unsigned long rlim_new)  	cputime = secs_to_cputime(rlim_new);  	if (cputime_eq(current->signal->it_prof_expires, cputime_zero) || -	    cputime_lt(current->signal->it_prof_expires, cputime)) { +	    cputime_gt(current->signal->it_prof_expires, cputime)) {  		spin_lock_irq(¤t->sighand->siglock);  		set_process_cpu_timer(current, CPUCLOCK_PROF, &cputime, NULL);  		spin_unlock_irq(¤t->sighand->siglock); @@ -224,7 +224,7 @@ static int cpu_clock_sample(const clockid_t which_clock, struct task_struct *p,  		cpu->cpu = virt_ticks(p);  		break;  	case CPUCLOCK_SCHED: -		cpu->sched = p->se.sum_exec_runtime + task_delta_exec(p); +		cpu->sched = task_sched_runtime(p);  		break;  	}  	return 0; @@ -305,18 +305,19 @@ static int cpu_clock_sample_group(const clockid_t which_clock,  {  	struct task_cputime cputime; -	thread_group_cputime(p, &cputime);  	switch (CPUCLOCK_WHICH(which_clock)) {  	default:  		return -EINVAL;  	case CPUCLOCK_PROF: +		thread_group_cputime(p, &cputime);  		cpu->cpu = cputime_add(cputime.utime, cputime.stime);  		break;  	case CPUCLOCK_VIRT: +		thread_group_cputime(p, &cputime);  		cpu->cpu = cputime.utime;  		break;  	case CPUCLOCK_SCHED: -		cpu->sched = cputime.sum_exec_runtime + task_delta_exec(p); +		cpu->sched = thread_group_sched_runtime(p);  		break;  	}  	return 0; @@ -1419,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);  	}  }  | 
