-
Notifications
You must be signed in to change notification settings - Fork 58
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
Can no longer find debug symbols after macOS 15 sequoia upgrade #389
Comments
I can reproduce this locally. Example profile: https://share.firefox.dev/3YtKZuF I think the problem is on the sampling side, not on the symbolication side. Looking into it. |
If I attach to the process with lldb, it has these five modules at the end of
However, in my |
it may not be of big help, but I can also reproduce this issue with a much smaller example, just trying to dynamically load a rust cdylib from a rust executable: https://github.com/Maaarcocr/test_samply I thought maybe ruby was doing something fancy on the new macOS version, but I guess that is not it. |
Ok so i've done some investigations and the main issue seems to stem from here. In fact, if I comment out this line which essentially means remapping memory every time we have to read some of the profiled processed memory, the names return. Something somehow is making the mapped memory get out of sync. I have made a simple example with [email protected]:Maaarcocr/test-remap.git to check that I've confirmed that if I use |
My knowledge about linkers and such is extremely limited, so I'm afraid I won't be able to give a very detailed bug report.
I'm an happy use of samply on macOS, and I've been using it a lot to profile native Ruby gems, such as https://github.com/ruby/json. However, since I upgraded my machine to macOS 15 (Sequoia), it's no longer able to find symbols for the compiled
bundle
, so it makes the profiler pretty much unusable.Since I have another machine still on macOS 14, I did look at possible differences. On the old machine when recording with
--verbose
I see two files being opened that aren't on macOS 15:From some googling around, it seems like Apple made some change to how they generate/store debug symbols, now you're supposed to read them from a
.bundle.dSYM
directory?Looking at the files generated by clang, it looks like this:
The
.o
still exists, but samply no longer tries to open it.The text was updated successfully, but these errors were encountered: