sagemath / cysignals

cysignals: interrupt and signal handling for Cython. Source repository for https://pypi.org/project/cysignals/
GNU Lesser General Public License v3.0
44 stars 23 forks source link

Partial workaround for use of win32_altstack_handler in inappropriate contexts #108

Closed embray closed 5 years ago

embray commented 5 years ago

See https://trac.sagemath.org/ticket/27214#comment:11

One thing I might also add is in the case of STATUS_ACCESS_VIOLATION, one thing I can do at the very least is query the Windows VMM for the state of the accessed memory region. If it returns MAP_RESERVE there's a good chance we are hitting the still unhandled corner case I described in the comments, and can print an additional message with the hint about using mprotect(...). I'm not sure it really matters though.

embray commented 5 years ago

Need to add more documentation to the test.

embray commented 5 years ago

The failures on the Travis build don't appear to be relevant. It's failing like

    x86_64-conda_cos6-linux-gnu-gcc -pthread -DNDEBUG -fwrapv -O2 -Wall -I/home/travis/miniconda3/envs/test/include -fPIC -DCYTHON_CLINE_IN_TRACEBACK=0 -U_FORTIFY_SOURCE -Isrc/cysignals -Isrc -I/home/travis/miniconda3/envs/test/include/python3.6m -c build/src/cysignals/signals.c -o build/temp.linux-x86_64-3.6/build/src/cysignals/signals.o
    unable to execute 'x86_64-conda_cos6-linux-gnu-gcc': No such file or directory
    error: command 'x86_64-conda_cos6-linux-gnu-gcc' failed with exit status 1
jdemeyer commented 5 years ago

The failures on the Travis build don't appear to be relevant. It's failing like

This is supposed to be fixed by cfbd43bed315e1e0c6988bfa0a98a995ef227bd3

Can you rebase to latest master?

embray commented 5 years ago

Oh, I remember seeing that commit but didn't understand what it was for. Yes, I'll try that.