mac: reduce pessimization of sdt probe handling
Prior to the change the code would branch on return value and then check if probes are enabled. Since vast majority of the time they are not, this is clearly wasteful. Check probes first. Sponsored by: The FreeBSD Foundation
This commit is contained in:
parent
92dec625e3
commit
6dcf45feda
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=342247
@ -98,12 +98,14 @@ SDT_PROVIDER_DECLARE(mac_framework); /* Entry points to MAC. */
|
||||
"int", arg0);
|
||||
|
||||
#define MAC_CHECK_PROBE4(name, error, arg0, arg1, arg2, arg3) do { \
|
||||
if (error) { \
|
||||
SDT_PROBE5(mac_framework, , name, mac__check__err, \
|
||||
error, arg0, arg1, arg2, arg3); \
|
||||
} else { \
|
||||
SDT_PROBE5(mac_framework, , name, mac__check__ok, \
|
||||
0, arg0, arg1, arg2, arg3); \
|
||||
if (SDT_PROBES_ENABLED()) { \
|
||||
if (error) { \
|
||||
SDT_PROBE5(mac_framework, , name, mac__check__err,\
|
||||
error, arg0, arg1, arg2, arg3); \
|
||||
} else { \
|
||||
SDT_PROBE5(mac_framework, , name, mac__check__ok,\
|
||||
0, arg0, arg1, arg2, arg3); \
|
||||
} \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
@ -122,12 +124,14 @@ SDT_PROVIDER_DECLARE(mac_framework); /* Entry points to MAC. */
|
||||
"int", arg0, arg1);
|
||||
|
||||
#define MAC_GRANT_PROBE2(name, error, arg0, arg1) do { \
|
||||
if (error) { \
|
||||
SDT_PROBE3(mac_framework, , name, mac__grant__err, \
|
||||
error, arg0, arg1); \
|
||||
} else { \
|
||||
SDT_PROBE3(mac_framework, , name, mac__grant__ok, \
|
||||
error, arg0, arg1); \
|
||||
if (SDT_PROBES_ENABLED()) { \
|
||||
if (error) { \
|
||||
SDT_PROBE3(mac_framework, , name, mac__grant__err,\
|
||||
error, arg0, arg1); \
|
||||
} else { \
|
||||
SDT_PROBE3(mac_framework, , name, mac__grant__ok,\
|
||||
error, arg0, arg1); \
|
||||
} \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user