-
-
Notifications
You must be signed in to change notification settings - Fork 481
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
Fix various invalid uses of sig_on() #27060
Comments
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
Commit: |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:5
Retarging tickets optimistically to the next milestone. If you are responsible for this ticket (either its reporter or owner) and don't believe you are likely to complete this ticket before the next release (8.7) please retarget this ticket's milestone to sage-pending or sage-wishlist. |
comment:6
On the macro-scale this LGTM. On the details, the person I'd choose to review this is you. But since you already made the commit... |
Reviewer: Timo Kaufmann |
comment:8
Could you say a little bit more about why these |
This comment has been minimized.
This comment has been minimized.
comment:10
Replying to @embray:
I updated the ticket description, I hope it is clearer now. It has nothing to do with the GIL. |
This comment has been minimized.
This comment has been minimized.
comment:12
I see what you're saying now--thank you. |
Changed branch from u/jdemeyer/fix_various_invalid_uses_of_sig_on__ to |
In order to debug crashes with cypari2 (#26442), I added some checks to cypari2. But these checks are now failing because
sig_on()
is regularly used badly inside Sage.As documented in the cysignals documentation, code inside a
sig_on()
/sig_off()
block should not manipulate Python objects. The reason is that an interrupt at that time could put Python objects in an invalid state. It is especially problematic if a garbage collection happens inside asig_on()
block (because that takes a non-trivial amount of time and has a high probability of putting things in an invalid state).This ticket fixes a few of those cases where garbage collection might happen.
Component: cython
Author: Jeroen Demeyer
Branch/Commit:
9fffd00
Reviewer: Timo Kaufmann
Issue created by migration from https://trac.sagemath.org/ticket/27060
The text was updated successfully, but these errors were encountered: