-
-
Notifications
You must be signed in to change notification settings - Fork 15
Simple SIGQUIT support on Windows
#30
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
Conversation
|
Would it be worth upstreaming this? |
90dc9b6 to
64105e8
Compare
|
I could not, for the life of me, get WER to generate a dump file. I could generate |
|
For the record, the way I confirmed this is working was to build Julia with this patched libuv, then run: p = run(`$(Base.julia_cmd()) -e "sleep(10)"`; wait=false)
sleep(1)
kill(p, Base.SIGQUIT)The generated One downside to not using WER is that we don't get a unified dump collection mechanism for both |
3d01890 to
9d4a5bd
Compare
This commit provides two pieces; first, it enables building libuv with `SIGQUIT` support on Windows (useful for [0]), and second it enables coredumping when exceptions are hit, after our exception handler has finished printing out a backtrace. This is useful for using WER to create dump files when we segfault, etc... This commit requires libuv PRs [1] and [2] to properly function. [0] #45864 [1] JuliaLang/libuv#30 [2] JuliaLang/libuv#31
db5b0ba to
bfb68de
Compare
vtjnash
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you submit this upstream to v1.x also?
e09b534 to
906824c
Compare
906824c to
6fe5518
Compare
|
@vtjnash could you review once more, and if it's good, I'll submit to upstream on the |
vtjnash
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
basically just commenting on a lot of style nits for libuv-style, but otherwise SGTM
This commit adds the ability to dump core when sending the `SIGQUIT` signal on Windows. The change reads in the current registry setting for local dumps, and attempts to write out to that location before killing the process. See [0] for registry and pathing details. This behavior mimics that of the dumps created by the typical Windows Error Reporting mechanism. [0] https://learn.microsoft.com/en-us/windows/win32/wer/collecting-user-mode-dumps
6fe5518 to
962eb03
Compare
|
Upstream patch submitted here: libuv#3840 |
|
@vtjnash there have been a few times recently where this kind of support would have been helpful. What do we think; should I bump the upstream PR? |
|
Yeah, go ahead and bump it and I will try to find time (hah) |
|
Now that upstream has been merged, what do we do here? |
Attempting to call
MiniDumpWriteDump()to get crash dumps on windows when SIGQUIT is passed.