svn commit: r212741 - stable/7/sys/dev/hwpmc

Fabien Thomas fabient at FreeBSD.org
Thu Sep 16 15:18:47 UTC 2010


Author: fabient
Date: Thu Sep 16 15:18:46 2010
New Revision: 212741
URL: http://svn.freebsd.org/changeset/base/212741

Log:
  MFC r212224:
   Fix invalid class removal when IAF is not the last class.
   Keep IAF class with 0 PMC and change the alias in libpmc to IAP.

Modified:
  stable/7/sys/dev/hwpmc/hwpmc_core.c
Directory Properties:
  stable/7/sys/   (props changed)
  stable/7/sys/cddl/contrib/opensolaris/   (props changed)
  stable/7/sys/contrib/dev/acpica/   (props changed)
  stable/7/sys/contrib/pf/   (props changed)

Modified: stable/7/sys/dev/hwpmc/hwpmc_core.c
==============================================================================
--- stable/7/sys/dev/hwpmc/hwpmc_core.c	Thu Sep 16 15:15:34 2010	(r212740)
+++ stable/7/sys/dev/hwpmc/hwpmc_core.c	Thu Sep 16 15:18:46 2010	(r212741)
@@ -2234,21 +2234,8 @@ pmc_core_initialize(struct pmc_mdep *md,
 		core_iaf_npmc = cpuid[CORE_CPUID_EDX] & 0x1F;
 		core_iaf_width = (cpuid[CORE_CPUID_EDX] >> 5) & 0xFF;
 
-		if (core_iaf_npmc > 0) {
-			iaf_initialize(md, maxcpu, core_iaf_npmc,
-			    core_iaf_width);
-			core_pmcmask |= ((1ULL << core_iaf_npmc) - 1) <<
-			    IAF_OFFSET;
-		} else {
-			/*
-			 * Adjust the number of classes exported to
-			 * user space.
-			 */
-			md->pmd_nclass--;
-			KASSERT(md->pmd_nclass == 2,
-			    ("[core,%d] unexpected nclass %d", __LINE__,
-				md->pmd_nclass));
-		}
+		iaf_initialize(md, maxcpu, core_iaf_npmc, core_iaf_width);
+		core_pmcmask |= ((1ULL << core_iaf_npmc) - 1) << IAF_OFFSET;
 	}
 
 	PMCDBG(MDP,INI,1,"core-init pmcmask=0x%jx iafri=%d", core_pmcmask,


More information about the svn-src-stable-7 mailing list