Page MenuHomeFreeBSD

D23055.id.diff
No OneTemporary

D23055.id.diff

Index: head/sys/powerpc/powerpc/sigcode64.S
===================================================================
--- head/sys/powerpc/powerpc/sigcode64.S
+++ head/sys/powerpc/powerpc/sigcode64.S
@@ -63,9 +63,13 @@
addi 3,1,112+SF_UC /* restore sp, and get &frame->sf_uc */
li 0,SYS_sigreturn
sc /* sigreturn(scp) */
+ /*
+ * If we get back to here, it means sigreturn failed.
+ * As such, we are now stuck in the wrong context.
+ * Exit immediately without touching the stack.
+ */
li 0,SYS_exit
sc /* exit(errno) */
- nop /* align to doubleword */
endsigcode64:
.data

File Metadata

Mime Type
text/plain
Expires
Sun, Apr 12, 10:59 AM (18 h, 2 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31343918
Default Alt Text
D23055.id.diff (598 B)

Event Timeline