summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoravg <avg@FreeBSD.org>2016-11-17 15:14:59 +0000
committeravg <avg@FreeBSD.org>2016-11-17 15:14:59 +0000
commit52dc10695890670043660a384e6d6f262398fc5d (patch)
tree778cffdcd43d419057cb895865956274d0660e22
parent3bab11f28e6e46d05ee5e8900252c0a5d020b13f (diff)
downloadFreeBSD-src-52dc10695890670043660a384e6d6f262398fc5d.zip
FreeBSD-src-52dc10695890670043660a384e6d6f262398fc5d.tar.gz
MFC r308101: hwpmc: fix a race between amd_stop_pmc and amd_intr
-rw-r--r--sys/dev/hwpmc/hwpmc_amd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/hwpmc/hwpmc_amd.c b/sys/dev/hwpmc/hwpmc_amd.c
index 0bee138..cc655a1 100644
--- a/sys/dev/hwpmc/hwpmc_amd.c
+++ b/sys/dev/hwpmc/hwpmc_amd.c
@@ -690,12 +690,13 @@ amd_intr(int cpu, struct trapframe *tf)
error = pmc_process_interrupt(cpu, PMC_HR, pm, tf,
TRAPF_USERMODE(tf));
if (error == 0)
- wrmsr(evsel, config | AMD_PMC_ENABLE);
+ wrmsr(evsel, config);
}
atomic_add_int(retval ? &pmc_stats.pm_intr_processed :
&pmc_stats.pm_intr_ignored, 1);
+ PMCDBG1(MDP,INT,2, "retval=%d", retval);
return (retval);
}
OpenPOWER on IntegriCloud