spinlock_t *cpufreq_statistic_lock =
&per_cpu(cpufreq_statistic_lock, op->cpuid);
- spin_lock_irq(cpufreq_statistic_lock);
+ spin_lock(cpufreq_statistic_lock);
if ( !pxpt || !pxpt->u.pt || !pxpt->u.trans_pt )
{
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return -ENODATA;
}
ct = pmpt->perf.state_count;
if ( copy_to_guest(op->u.getpx.trans_pt, pxpt->u.trans_pt, ct*ct) )
{
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
ret = -EFAULT;
break;
}
if ( copy_to_guest(op->u.getpx.pt, pxpt->u.pt, ct) )
{
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
ret = -EFAULT;
break;
}
op->u.getpx.last = pxpt->u.last;
op->u.getpx.cur = pxpt->u.cur;
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
break;
}
spinlock_t *cpufreq_statistic_lock =
&per_cpu(cpufreq_statistic_lock, cpu);
- spin_lock_irq(cpufreq_statistic_lock);
+ spin_lock(cpufreq_statistic_lock);
if ( !pxpt || !pmpt ) {
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return;
}
(*(pxpt->u.trans_pt + from * pmpt->perf.state_count + to))++;
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
}
int cpufreq_statistic_init(unsigned int cpuid)
if ( !pmpt )
return -EINVAL;
- spin_lock_irq(cpufreq_statistic_lock);
+ spin_lock(cpufreq_statistic_lock);
if ( pxpt ) {
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return 0;
}
pxpt = xmalloc(struct pm_px);
if ( !pxpt ) {
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return -ENOMEM;
}
memset(pxpt, 0, sizeof(*pxpt));
pxpt->u.trans_pt = xmalloc_array(uint64_t, count * count);
if (!pxpt->u.trans_pt) {
xfree(pxpt);
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return -ENOMEM;
}
if (!pxpt->u.pt) {
xfree(pxpt->u.trans_pt);
xfree(pxpt);
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return -ENOMEM;
}
pxpt->prev_state_wall = NOW();
pxpt->prev_idle_wall = get_cpu_idle_time(cpuid);
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return 0;
}
spinlock_t *cpufreq_statistic_lock =
&per_cpu(cpufreq_statistic_lock, cpuid);
- spin_lock_irq(cpufreq_statistic_lock);
+ spin_lock(cpufreq_statistic_lock);
if (!pxpt) {
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return;
}
xfree(pxpt);
cpufreq_statistic_data[cpuid] = NULL;
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
}
void cpufreq_statistic_reset(unsigned int cpuid)
spinlock_t *cpufreq_statistic_lock =
&per_cpu(cpufreq_statistic_lock, cpuid);
- spin_lock_irq(cpufreq_statistic_lock);
+ spin_lock(cpufreq_statistic_lock);
if ( !pmpt || !pxpt || !pxpt->u.pt || !pxpt->u.trans_pt ) {
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
return;
}
pxpt->prev_state_wall = NOW();
pxpt->prev_idle_wall = get_cpu_idle_time(cpuid);
- spin_unlock_irq(cpufreq_statistic_lock);
+ spin_unlock(cpufreq_statistic_lock);
}