From owner-svn-src-all@freebsd.org Fri Feb 17 14:05:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 84328CE34A1; Fri, 17 Feb 2017 14:05:58 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5187F1059; Fri, 17 Feb 2017 14:05:58 +0000 (UTC) (envelope-from mjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v1HE5v7t038721; Fri, 17 Feb 2017 14:05:57 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v1HE5vfO038720; Fri, 17 Feb 2017 14:05:57 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <201702171405.v1HE5vfO038720@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Fri, 17 Feb 2017 14:05:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r313874 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 17 Feb 2017 14:05:58 -0000 Author: mjg Date: Fri Feb 17 14:05:57 2017 New Revision: 313874 URL: https://svnweb.freebsd.org/changeset/base/313874 Log: Make inline lockstat checks just inspect lockstat_enabled There is no correctness issue and this lets the kernel just test one typically false variable. Modified: head/sys/sys/lockstat.h Modified: head/sys/sys/lockstat.h ============================================================================== --- head/sys/sys/lockstat.h Fri Feb 17 13:49:46 2017 (r313873) +++ head/sys/sys/lockstat.h Fri Feb 17 14:05:57 2017 (r313874) @@ -107,6 +107,13 @@ extern int lockstat_enabled; LOCKSTAT_RECORD1(probe, lp, a); \ } while (0) +#ifndef LOCK_PROFILING +#define LOCKSTAT_PROFILE_ENABLED(probe) __predict_false(lockstat_enabled) +#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) LOCKSTAT_PROFILE_ENABLED(probe) +#else +#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) 1 +#endif + struct lock_object; uint64_t lockstat_nsecs(struct lock_object *); @@ -130,16 +137,12 @@ uint64_t lockstat_nsecs(struct lock_obje #define LOCKSTAT_PROFILE_RELEASE_RWLOCK(probe, lp, a) \ LOCKSTAT_PROFILE_RELEASE_LOCK(probe, lp) -#endif /* !KDTRACE_HOOKS */ - #ifndef LOCK_PROFILING -#define LOCKSTAT_PROFILE_ENABLED(probe) \ - SDT_PROBE_ENABLED(lockstat, , , probe) -#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) \ - SDT_PROBE_ENABLED(lockstat, , , probe) -#else -#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) 1 +#define LOCKSTAT_PROFILE_ENABLED(probe) 0 #endif +#define LOCKSTAT_OOL_PROFILE_ENABLED(probe) 1 + +#endif /* !KDTRACE_HOOKS */ #endif /* _KERNEL */ #endif /* _SYS_LOCKSTAT_H */