svn commit: r333598 - head/sys/dev/hwpmc
Matt Macy
mmacy at FreeBSD.org
Mon May 14 01:08:48 UTC 2018
Author: mmacy
Date: Mon May 14 01:08:47 2018
New Revision: 333598
URL: https://svnweb.freebsd.org/changeset/base/333598
Log:
pmc: don't add pmc owner to list until setup is complete
Once a pmc owner is added to the pmc_ss_owners list it is
visible for all to see. We don't want this to happen until
setup is complete.
Reported by: mjg
Approved by: sbruno
Modified:
head/sys/dev/hwpmc/hwpmc_mod.c
Modified: head/sys/dev/hwpmc/hwpmc_mod.c
==============================================================================
--- head/sys/dev/hwpmc/hwpmc_mod.c Mon May 14 00:56:33 2018 (r333597)
+++ head/sys/dev/hwpmc/hwpmc_mod.c Mon May 14 01:08:47 2018 (r333598)
@@ -2733,13 +2733,6 @@ pmc_start(struct pmc *pm)
*/
if (mode == PMC_MODE_SS) {
- if (po->po_sscount == 0) {
- CK_LIST_INSERT_HEAD(&pmc_ss_owners, po, po_ssnext);
- atomic_add_rel_int(&pmc_ss_count, 1);
- PMCDBG1(PMC,OPS,1, "po=%p in global list", po);
- }
- po->po_sscount++;
-
/*
* Log mapping information for all existing processes in the
* system. Subsequent mappings are logged as they happen;
@@ -2748,6 +2741,12 @@ pmc_start(struct pmc *pm)
if (po->po_logprocmaps == 0) {
pmc_log_all_process_mappings(po);
po->po_logprocmaps = 1;
+ }
+ po->po_sscount++;
+ if (po->po_sscount == 1) {
+ atomic_add_rel_int(&pmc_ss_count, 1);
+ CK_LIST_INSERT_HEAD(&pmc_ss_owners, po, po_ssnext);
+ PMCDBG1(PMC,OPS,1, "po=%p in global list", po);
}
}
More information about the svn-src-all
mailing list