You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are utilizing sysinfo and wrapping it inside a Ruby gem and our process is crashing on M1 macs with some regularity. I am using sysinfo 0.33, rustc 1.73 and Ruby 3.1.3.
Here's the header for the crash report:
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------
Process: ruby [42126]
Path: /Users/USER/*/ruby
Identifier: ruby
Version: ???
Code Type: ARM-64 (Native)
Parent Process: ruby [32878]
Responsible: rubymine [76206]
User ID: 1051487424
Date/Time: 2024-01-23 13:33:06.4356 -0500
OS Version: macOS 14.2.1 (23C71)
Report Version: 12
Anonymous UUID: 46169751-138F-4F35-B67F-1E0619B7A5F4
Sleep/Wake UUID: 4720FC63-FDF4-486A-A035-F6355830E554
Time Awake Since Boot: 110000 seconds
Time Since Wake: 3333 seconds
System Integrity Protection: enabled
Crashed Thread: 6 diagnostic_context.rb:471
Exception Type: EXC_GUARD (SIGKILL)
Exception Codes: GUARD_TYPE_MACH_PORT
Exception Codes: 0x0000000000000000, 0x0000000000000000
Termination Reason: Namespace GUARD, Code 2305843022098595840
Application Specific Information:
crashed on child side of fork pre-exec
The crash sometimes looks different but always comes from a call to host_processor_info.
I was playing with this some more this morning and was able to drastically simplify the reproduction case and remove the Ruby dependency. Reuploading here if you wouldn't mind taking a look. The thing that's catching my eye the most is that the issue only seems to occur if I call refresh(); from the parent process. If I move that into the child process, it seems like it does not reproduce.
I'm wondering if perhaps there's something async going on with refresh_cpu and both libcurl and sysinfo are trying to access the same resource at the same time or something? I don't know, I'm just kind of speculating.
Describe the bug
We are utilizing sysinfo and wrapping it inside a Ruby gem and our process is crashing on M1 macs with some regularity. I am using sysinfo 0.33, rustc 1.73 and Ruby 3.1.3.
Here's the header for the crash report:
The crash sometimes looks different but always comes from a call to host_processor_info.
Another example:
Not sure honestly if the problem is here with sysinfo or the libc crate possibly but I figured I'd start here.
To Reproduce
Unfortunately, I haven't found an easy way to reproduce this yet. I can continue working on that.
The text was updated successfully, but these errors were encountered: