]> git.ipfire.org Git - thirdparty/glibc.git/commit
mips: terminate the FDE before the return trampoline in makecontext
authorAurelien Jarno <aurelien@aurel32.net>
Tue, 8 Mar 2016 23:25:00 +0000 (00:25 +0100)
committerMike Frysinger <vapier@gentoo.org>
Sat, 12 Mar 2016 16:37:53 +0000 (11:37 -0500)
commit8649aef19cb2edcc5bfa86e5e8b89f2c80401b0f
tree3c1be791ad6af3cda6f5db7c9a361b81b968b5a9
parent827b40098862b65fdc1a96288fbd930f16b3e49f
mips: terminate the FDE before the return trampoline in makecontext

In makecontext the FDE needs to be terminated before the return
trampoline otherwise backtrace called within a context created by
makecontext yields infinite backtrace.

This bug has been present for a long time, stdlib/tst-makecontext did
not fail until recent commit e535ce25. Tested on mips-linux-gnu and
mips64el-linux-gnuabi64 and mips-linux-gnu, no regression.

This fixes stdlib/tst-makecontext on MIPS.

Changelog:
[BZ #19792]
* sysdeps/unix/sysv/linux/mips/makecontext.S (__makecontext):
Terminate FDE before return label.

(cherry picked from commit f8e9c4d30c28b8815e65a391416e8b15d2e7cbb8)
(cherry picked from commit 63ed4db4b45cab21cf6f68aac7b9fce2f770fe74)
sysdeps/unix/sysv/linux/mips/makecontext.S