mirror of
https://github.com/wolfpld/tracy.git
synced 2026-09-02 08:28:30 +00:00
The old preflight opened one generic event, which said little about whether the client's actual setup would work. PreflightSamplingEvent now opens the client's exact external event shape (the per-CPU pid-filtered CPU_CLOCK callstack event of SysTraceStart), verifies the ring mmap works, and probes the hardware PMU counters informationally. On EACCES/EPERM retry user-space only - both event and callchain, since the callchain part still requires perf_allow_kernel - and report kernel frames as unavailable; any other error is fatal, as the client's identical shape would fail the same way.