svn commit: r239798 - stable/9/sys/sys
Jim Harris
jimharris at FreeBSD.org
Wed Aug 29 01:04:13 UTC 2012
Author: jimharris
Date: Wed Aug 29 01:04:12 2012
New Revision: 239798
URL: http://svn.freebsd.org/changeset/base/239798
Log:
MFC r239591:
Remove unncessary atomic operation when reading process flags in
PMC_PROC_IS_USING_PMCS macro.
Invocations of this macro are not synchronized with setting/clearing
of P_HWPMC flag, so the atomic operation here isn't needed. Removing
the atomic operation provides noticeable improvement (5-6%) on
some scheduler-intensive workloads with HWPMC_HOOKS enabled on an
8C Sandy Bridge Xeon system.
Sponsored by: Intel
Modified:
stable/9/sys/sys/pmckern.h
Directory Properties:
stable/9/sys/ (props changed)
Modified: stable/9/sys/sys/pmckern.h
==============================================================================
--- stable/9/sys/sys/pmckern.h Wed Aug 29 00:53:58 2012 (r239797)
+++ stable/9/sys/sys/pmckern.h Wed Aug 29 01:04:12 2012 (r239798)
@@ -201,8 +201,7 @@ do { \
/* Check if a process is using HWPMCs.*/
#define PMC_PROC_IS_USING_PMCS(p) \
- (__predict_false(atomic_load_acq_int(&(p)->p_flag) & \
- P_HWPMC))
+ (__predict_false(p->p_flag & P_HWPMC))
/* Check if a thread have pending user capture. */
#define PMC_IS_PENDING_CALLCHAIN(p) \
More information about the svn-src-stable
mailing list