Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update blazesym snapshot and profile example #205

Merged
merged 6 commits into from
Aug 22, 2023

Conversation

danielocfb
Copy link

Please see individual commits for descriptions.

When building the Rust examples we see a warning:

  > warning: some crates are on edition 2021 which defaults to
  >          `resolver = "2"`, but virtual workspaces default to `resolver = "1"`
  > note: to keep the current resolver, specify `workspace.resolver = "1"`
  >       in the workspace root's manifest
  > note: to use the edition 2021 resolver, specify `workspace.resolver = "2"`
  >       in the workspace root's manifest

Fix it by switching to resolver 2.

Signed-off-by: Daniel Müller <[email protected]>
Switch the profile example over to using Rust edition 2021 for the
latest and greatest.

Signed-off-by: Daniel Müller <[email protected]>
Add the -v/--verbose option to control tracing of blazesym internals.

Signed-off-by: Daniel Müller <[email protected]>
@danielocfb
Copy link
Author

Haven't gotten around to converting the C example...

Update the clap dependency as used by the profile example to version
4.0, in order to not fall behind upstream too much.

Signed-off-by: Daniel Müller <[email protected]>
It is entirely possible for symbolization to fail for legitimate reasons
when profiling the system continuously. For example, a process could
terminate between the time addresses from it were captured and we
attempt to symbolize them, in which case an error will be reported by
blazesym.
As it stands such an error will shoot down the profiler, which is not
the desired behavior. With this change we handle such errors more
gracefully by just printing an error message.

Signed-off-by: Daniel Müller <[email protected]>
Update the blazesym submodule to version 0.2.0-alpha.5. Also change the
dependency to using the default features, which includes DWARF support
and transparent symbol demangling.
The profile example is overhauled to use the changed APIs and improve
the code to be less redundant.

Signed-off-by: Daniel Müller <[email protected]>
@danielocfb
Copy link
Author

Haven't gotten around to converting the C example...

Updated now.

@anakryiko anakryiko merged commit 26bc827 into libbpf:master Aug 22, 2023
7 of 8 checks passed
@danielocfb danielocfb deleted the topic/blazesym branch September 5, 2023 22:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants