freebsd-dev/sys
Wojciech Macek 7bc13692a2 hwpmc: fix performance issues
Differential revision:	https://reviews.freebsd.org/D32025

Avoid using atomics as it_wait is guarded by td_lock.

Report threshold calculation is done only if at least one PMC hook
is installed

Fixes:
* avoid unnecessary branching (if frame != null ...)
  by having PMC_HOOK_INSTALLED_ANY
  condition on the top of them, which should hint
  the core not to execute speculatively anything
  which us underneath;
* access intr_hwpmc_waiting_report_threshold cacheline
  only if at least one hook is loaded;
2021-09-23 07:15:42 +02:00
..
amd64 Revert "linux32: add a hack to avoid redefining the type of the savefpu tag" 2021-09-22 23:17:47 +03:00
arm arm: Handle thumb2 thread entry point. 2021-09-21 23:20:27 +02:00
arm64 arm64: Handle thumb2 thread entry point. 2021-09-21 23:20:27 +02:00
bsm
cam libcam: Define depop structures and introduce scsi_wrap 2021-09-20 16:27:59 -06:00
cddl kern: drop remaining references to removed makesyscalls.sh 2021-09-09 19:40:54 -05:00
compat Drop cloudabi 2021-09-22 00:18:44 +03:00
conf Drop cloudabi 2021-09-22 00:18:44 +03:00
contrib Drop cloudabi 2021-09-22 00:18:44 +03:00
crypto crypto(4): Fix a few typos in camellia.c 2021-09-04 13:02:11 +02:00
ddb Create sys/reg.h for the common code previously in machine/reg.h 2021-08-30 12:50:53 +01:00
dev dwmmc: Remove dwmmc_setup_bus call from start_cmd 2021-09-21 18:17:20 +02:00
dts
fs fusefs: don't panic if FUSE_GETATTR fails durint VOP_GETPAGES 2021-09-21 14:01:06 -06:00
gdb
geom g_label: Handle small sector sizes when tasting 2021-09-07 11:19:29 -04:00
gnu
i386 Drop cloudabi 2021-09-22 00:18:44 +03:00
isa
kern hwpmc: fix performance issues 2021-09-23 07:15:42 +02:00
kgssapi
libkern libkern: remove bcopy 2021-08-24 11:24:07 +00:00
mips Fix a common typo in source code comments 2021-09-04 12:56:57 +02:00
modules Revert "linux32: add a hack to avoid redefining the type of the savefpu tag" 2021-09-22 23:17:47 +03:00
net Add a switch structure for send tags. 2021-09-14 11:43:41 -07:00
net80211 net80211: add func/line information to IEEE80211_DISCARD* macros 2021-09-04 09:24:51 +00:00
netgraph ng_l2tp: improve callout locking. 2021-09-10 11:27:19 -07:00
netinet sctp: Simplify stream scheduler usage 2021-09-21 17:13:57 +02:00
netinet6 sctp: Tighten up locking around sctp_aloc_assoc() 2021-09-11 10:15:21 -04:00
netipsec ipsec: enter epoch before calling into ipsec_run_hhooks 2021-09-21 17:02:41 +00:00
netpfil pf: always log nat rule and do it pre-rewrite 2021-09-18 13:43:41 +02:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed socket: De-duplicate SBLOCKWAIT() definitions 2021-09-14 09:01:32 -04:00
opencrypto opencrypto: Allow kern.crypto.allow_soft to be specified as a tunable 2021-09-20 12:07:29 -04:00
powerpc powerpc64: fix radix on pseries TLB invalidation 2021-09-08 08:37:11 -03:00
riscv sifive_spi: Add missing case for SPIBUS_MODE_NONE 2021-08-30 23:38:02 +01:00
rpc rpc: Convert an SOLISTENING check to an assertion 2021-09-17 14:19:05 -04:00
security
sys Remove SV_CAPSICUM 2021-09-22 00:18:44 +03:00
teken
tests
tools Drop cloudabi 2021-09-22 00:18:44 +03:00
ufs Eliminate snaplk / bufwait LOR when creating UFS snapshots 2021-09-18 17:02:30 -07:00
vm vm_page_startup: correct calculation of the starting page 2021-09-19 21:27:55 +03:00
x86 Revert "linux32: add a hack to avoid redefining the type of the savefpu tag" 2021-09-22 23:17:47 +03:00
xdr
xen
Makefile