Skip to content

Commit

Permalink
powerpc: Convert pmc_owner_lock to raw_spinlock
Browse files Browse the repository at this point in the history
pmc_owner_lock needs to be a real spinlock in RT. Convert it to
raw_spinlock.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
  • Loading branch information
Thomas Gleixner authored and Benjamin Herrenschmidt committed Feb 19, 2010
1 parent b8f8778 commit 071c06c
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions arch/powerpc/kernel/pmc.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,15 @@ static void dummy_perf(struct pt_regs *regs)
}


static DEFINE_SPINLOCK(pmc_owner_lock);
static DEFINE_RAW_SPINLOCK(pmc_owner_lock);
static void *pmc_owner_caller; /* mostly for debugging */
perf_irq_t perf_irq = dummy_perf;

int reserve_pmc_hardware(perf_irq_t new_perf_irq)
{
int err = 0;

spin_lock(&pmc_owner_lock);
raw_spin_lock(&pmc_owner_lock);

if (pmc_owner_caller) {
printk(KERN_WARNING "reserve_pmc_hardware: "
Expand All @@ -59,21 +59,21 @@ int reserve_pmc_hardware(perf_irq_t new_perf_irq)
perf_irq = new_perf_irq ? new_perf_irq : dummy_perf;

out:
spin_unlock(&pmc_owner_lock);
raw_spin_unlock(&pmc_owner_lock);
return err;
}
EXPORT_SYMBOL_GPL(reserve_pmc_hardware);

void release_pmc_hardware(void)
{
spin_lock(&pmc_owner_lock);
raw_spin_lock(&pmc_owner_lock);

WARN_ON(! pmc_owner_caller);

pmc_owner_caller = NULL;
perf_irq = dummy_perf;

spin_unlock(&pmc_owner_lock);
raw_spin_unlock(&pmc_owner_lock);
}
EXPORT_SYMBOL_GPL(release_pmc_hardware);

Expand Down

0 comments on commit 071c06c

Please sign in to comment.