diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-01-16 21:34:48 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-01-16 21:34:48 +0000 |
commit | b040e1b0842c35ab444e8502db6ae59389d1e3d5 (patch) | |
tree | 0a16223224cd1a2defdfb03773bec88883ab87af /sysdeps/unix/sysv/linux/socketcall.h | |
parent | 502697713f4f129b602d7213253a9982ee1989f1 (diff) | |
download | glibc-b040e1b0842c35ab444e8502db6ae59389d1e3d5.tar.gz glibc-b040e1b0842c35ab444e8502db6ae59389d1e3d5.tar.xz glibc-b040e1b0842c35ab444e8502db6ae59389d1e3d5.zip |
Make soft-float powerpc swapcontext restore the signal mask (bug 21045).
The soft-float powerpc version of swapcontext does not restore the signal mask, resulting in stdlib/tst-setcontext2 failing: after getcontext after setcontext after swapcontext FAIL: SIGUSR2 is blocked after swapcontext. This patch fixes this by adjusting the arguments passed to __sigprocmask so that it restores the saved signal mask as well as saving the existing one. (For hard-float, this code is only used for a compat symbol, not for the current version of swapcontext.) Tested for soft-float powerpc. [BZ #21045] * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S (__CONTEXT_FUNC_NAME): Pass address of signal mask to be restored to __sigprocmask.
Diffstat (limited to 'sysdeps/unix/sysv/linux/socketcall.h')
0 files changed, 0 insertions, 0 deletions