This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug nptl/22563] __cancel_jmp_buf in __pthread_unwind_buf_t is incompatible with setjmp/longmp
- From: "cvs-commit at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Thu, 07 Dec 2017 00:54:31 +0000
- Subject: [Bug nptl/22563] __cancel_jmp_buf in __pthread_unwind_buf_t is incompatible with setjmp/longmp
- Auto-submitted: auto-generated
- References: <bug-22563-131@http.sourceware.org/bugzilla/>
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.