This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug nptl/22563] __cancel_jmp_buf in __pthread_unwind_buf_t is incompatible with setjmp/longmp


https://sourceware.org/bugzilla/show_bug.cgi?id=22563

--- Comment #3 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, hjl/cet/setjmp has been created
        at  2036cc2c4c5d3a374bd142adab40aa94042f1d44 (commit)

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2036cc2c4c5d3a374bd142adab40aa94042f1d44

commit 2036cc2c4c5d3a374bd142adab40aa94042f1d44
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Dec 6 15:00:46 2017 -0800

    x86: Update __cancel_jmp_buf to match struct __jmp_buf_tag [BZ #22563]

    On x86, padding in struct __jmp_buf_tag is used for shadow stack pointer
    to support Shadow Stack in Intel Control-flow Enforcemen Technology.
    Since the cancel_jmp_buf array is passed to setjmp and longjmp by
    casting it to pointer to struct __jmp_buf_tag, it should be as large
    as struct __jmp_buf_tag.  This patch adds pthread.h and jmpbuf-unwind.h
    for Linux/x86 to match __cancel_jmp_buf with struct __jmp_buf_tag.

    To support the existing binaries, we may have to implement the exported
    setjmp/lonjmp in libc.so as IFUNC functions.

        [BZ #22563]
        * sysdeps/unix/sysv/linux/x86/jmpbuf-unwind.h: New file.
        * sysdeps/unix/sysv/linux/x86/pthread.h: Likewise.

-----------------------------------------------------------------------

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]