Skip to content

Commit 02eee34

Browse files
move feature decision to config
1 parent 64be9ee commit 02eee34

File tree

2 files changed

+16
-17
lines changed

2 files changed

+16
-17
lines changed

profiling/src/config.rs

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -202,42 +202,45 @@ pub(crate) unsafe fn profiling_enabled() -> bool {
202202
/// This function must only be called after config has been initialized in
203203
/// rinit, and before it is uninitialized in mshutdown.
204204
pub(crate) unsafe fn profiling_experimental_features_enabled() -> bool {
205-
get_bool(ProfilingExperimentalFeaturesEnabled, false)
205+
profiling_enabled() && get_bool(ProfilingExperimentalFeaturesEnabled, false)
206206
}
207207

208208
/// # Safety
209209
/// This function must only be called after config has been initialized in
210210
/// rinit, and before it is uninitialized in mshutdown.
211211
pub(crate) unsafe fn profiling_endpoint_collection_enabled() -> bool {
212-
get_bool(ProfilingEndpointCollectionEnabled, true)
212+
profiling_enabled() && get_bool(ProfilingEndpointCollectionEnabled, true)
213213
}
214214

215215
/// # Safety
216216
/// This function must only be called after config has been initialized in
217217
/// rinit, and before it is uninitialized in mshutdown.
218218
pub(crate) unsafe fn profiling_experimental_cpu_time_enabled() -> bool {
219-
get_bool(ProfilingExperimentalCpuTimeEnabled, true)
219+
profiling_experimental_features_enabled()
220+
|| profiling_enabled() && get_bool(ProfilingExperimentalCpuTimeEnabled, true)
220221
}
221222

222223
/// # Safety
223224
/// This function must only be called after config has been initialized in
224225
/// rinit, and before it is uninitialized in mshutdown.
225226
pub(crate) unsafe fn profiling_allocation_enabled() -> bool {
226-
get_bool(ProfilingAllocationEnabled, true)
227+
profiling_enabled() && get_bool(ProfilingAllocationEnabled, true)
227228
}
228229

229230
/// # Safety
230231
/// This function must only be called after config has been initialized in
231232
/// rinit, and before it is uninitialized in mshutdown.
232233
pub(crate) unsafe fn profiling_experimental_timeline_enabled() -> bool {
233-
get_bool(ProfilingExperimentalTimelineEnabled, false)
234+
profiling_experimental_features_enabled()
235+
|| profiling_enabled() && get_bool(ProfilingExperimentalTimelineEnabled, false)
234236
}
235237

236238
/// # Safety
237239
/// This function must only be called after config has been initialized in
238240
/// rinit, and before it is uninitialized in mshutdown.
239241
pub(crate) unsafe fn profiling_exception_enabled() -> bool {
240-
get_bool(ProfilingExceptionEnabled, true)
242+
profiling_experimental_features_enabled()
243+
|| profiling_enabled() && get_bool(ProfilingExceptionEnabled, true)
241244
}
242245

243246
/// # Safety

profiling/src/lib.rs

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -478,18 +478,14 @@ extern "C" fn rinit(_type: c_int, _module_number: c_int) -> ZendResult {
478478
log_level,
479479
output_pprof,
480480
) = unsafe {
481-
let profiling_enabled = config::profiling_enabled();
482-
let profiling_experimental_features_enabled =
483-
profiling_enabled && config::profiling_experimental_features_enabled();
484481
(
485-
profiling_enabled,
486-
profiling_experimental_features_enabled,
487-
profiling_enabled && config::profiling_endpoint_collection_enabled(),
488-
profiling_experimental_features_enabled
489-
|| profiling_enabled && config::profiling_experimental_cpu_time_enabled(),
490-
profiling_enabled && config::profiling_allocation_enabled(),
491-
profiling_enabled && config::profiling_experimental_timeline_enabled(),
492-
profiling_enabled && config::profiling_exception_enabled(),
482+
config::profiling_enabled(),
483+
config::profiling_experimental_features_enabled(),
484+
config::profiling_endpoint_collection_enabled(),
485+
config::profiling_experimental_cpu_time_enabled(),
486+
config::profiling_allocation_enabled(),
487+
config::profiling_experimental_timeline_enabled(),
488+
config::profiling_exception_enabled(),
493489
config::profiling_exception_sampling_distance(),
494490
config::profiling_log_level(),
495491
config::profiling_output_pprof(),

0 commit comments

Comments
 (0)