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 #2 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  1f2d41d4ff5e24868b39f44e32ab649da90871ed (commit)

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

commit 1f2d41d4ff5e24868b39f44e32ab649da90871ed
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Dec 6 16:47:57 2017 -0800

    Update __jmp_buf size check

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=09917cfb650fa7a8fca9046a9ffd3ff9bf437377

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

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

    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 __saved_mask to __cancel_jmp_buf and
    remove padding from __pthread_unwind_buf_t.

        [BZ #22563]
        * include/pthread.h [!_ISOMAC]: Include <setjmp.h>.
        [!_ISOMAC]: Add _Static_assert to check size of
        __pthread_unwind_buf_t >= size of struct __jmp_buf_tag.
        * sysdeps/nptl/pthread.h: Include <bits/types/__sigset_t.h>.
        (__pthread_unwind_buf_t): Add __saved_mask to __cancel_jmp_buf.
        Remove __pad.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=23563e888f59cb4bbe6b93d37d0a8798bd0a92aa

commit 23563e888f59cb4bbe6b93d37d0a8798bd0a92aa
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Dec 5 11:58:23 2017 -0800

    Linux/x86: Copy setjmp/longjmp for SHSTK

    TODO: Add SHSTK support to

    sysdeps/unix/sysv/linux/i386/____longjmp_chk.S
    sysdeps/unix/sysv/linux/i386/__longjmp.S
    sysdeps/unix/sysv/linux/i386/bsd-_setjmp.S
    sysdeps/unix/sysv/linux/i386/bsd-setjmp.S
    sysdeps/unix/sysv/linux/i386/setjmp.S
    sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S
    sysdeps/unix/sysv/linux/x86_64/__longjmp.S
    sysdeps/unix/sysv/linux/x86_64/setjmp.S

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

-- 
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]