In the code we do not use string literals.
Also a check for DTRACE_PROBE7
macro has been added as not all systems defineDTRACE_PROBE{6,7,8,9,10,11,12}
macros (e.g., FreeBSD).
In the code we do not use string literals.
Also a check for DTRACE_PROBE7
macro has been added as not all systems defineDTRACE_PROBE{6,7,8,9,10,11,12}
macros (e.g., FreeBSD).
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
See the guideline for information on the review process.
If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.
Reviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.
Thanks for looking into this, however, I’m not sure if it’s the right time for this. At the moment, we only really support the tracepoints on Linux.
The suggested commit fixes USDT detection [..]
The suggested commit enables USDT detection on FreeBSD, something that (somewhat unintentionally) wasn’t enabled before. Not sure if it’s worth enabling them at the moment for FreeBSD. It would be awesome to have them on more OS’s (e.g. macOS see #25541), but AFAIK no one has looked into using them on FreeBSD. @kouloumos suggested to use dtrace to generate the tracepoint macros in #26593#pullrequestreview-1376804705 which would unify the process for macOS and Linux. I just saw that there’s a dtrace port for FreeBSD too. It would be nice if we could get FreeBSD, macOS and Linux with one unified approach. Until then, maybe leave them disabled?
ACK 468cf43ce8c38d6d92506fe22446d04e147e6786
The actual source code does not pass strings and it is better to test for whatever the source code will use. Maybe adjust the PR title/OP and the commit message.
AFAIK no one has looked into using them on FreeBSD
I would use them, please :)
I just saw that there’s a dtrace port for FreeBSD too
DTrace has been part of the FreeBSD base system since 2009. This is why I found it strange that Bitcoin Core’s src/util/trace.h
uses e.g. DTRACE_PROBE3()
, but that is not supported on FreeBSD. The man page: STD(9).
What are we doing here?
Reworked. The PR description has been updated.
ACK b53cab0083d99e9610d74517d1d41fc615953770
Tracepoints for FreeBSD can happen at a later point, if needed.