diff options
author | jkoshy <jkoshy@FreeBSD.org> | 2006-03-18 03:54:07 +0000 |
---|---|---|
committer | jkoshy <jkoshy@FreeBSD.org> | 2006-03-18 03:54:07 +0000 |
commit | ba6139a8973b2c3d88c6c2c6d826ef6b295ce058 (patch) | |
tree | f44126e6811767af14ea557d3372666a657c805a /sys/dev/hwpmc | |
parent | ebdf4c5109f42bb8c17794618cab6bcdd373ed7f (diff) | |
download | FreeBSD-src-ba6139a8973b2c3d88c6c2c6d826ef6b295ce058.zip FreeBSD-src-ba6139a8973b2c3d88c6c2c6d826ef6b295ce058.tar.gz |
When deconfiguring a log, only stop PMCs that are in the RUNNING
state.
Diffstat (limited to 'sys/dev/hwpmc')
-rw-r--r-- | sys/dev/hwpmc/hwpmc_mod.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/hwpmc/hwpmc_mod.c b/sys/dev/hwpmc/hwpmc_mod.c index 2a950de..0b6f72d 100644 --- a/sys/dev/hwpmc/hwpmc_mod.c +++ b/sys/dev/hwpmc/hwpmc_mod.c @@ -2439,7 +2439,8 @@ pmc_syscall_handler(struct thread *td, void *syscall_args) error = pmclog_flush(po); if (error == 0) { LIST_FOREACH(pm, &po->po_pmcs, pm_next) - if (pm->pm_flags & PMC_F_NEEDS_LOGFILE) + if (pm->pm_flags & PMC_F_NEEDS_LOGFILE && + pm->pm_state == PMC_STATE_RUNNING) pmc_stop(pm); error = pmclog_deconfigure_log(po); } |