Date: Sun, 3 Feb 2002 01:13:59 -0800 (PST) From: Bruce Evans <bde@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/i386/i386 locore.s machdep.c src/sys/pc98/i386 machdep.c Message-ID: <200202030913.g139Dxr66997@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
bde 2002/02/03 01:13:59 PST Modified files: sys/i386/i386 locore.s machdep.c sys/pc98/i386 machdep.c Log: Use osigreturn(2) instead of sigreturn(2) plus broken magic for returning from old signal handlers. This is simpler and faster, and fixes (new) sigreturn(2) when %eip in the new signal context happens to match the magic value (0x1d516). 0x1d516 is below the default ELF text section, so this probably never broken anything in practice. locore.s: In addition, don't build the signal trampoline for old signal handlers when it is not used. alpha: Not fixed, but seems to be even less broken in practice due to more advanced magic. A false match occurs for register #32 in mc_regs[]. Since there is no hardware register #32, a false match is only possible for direct calls to sigreturn(2) that happen to have the magic number in the spare mc_regs[32] field. Revision Changes Path 1.154 +7 -3 src/sys/i386/i386/locore.s 1.492 +0 -9 src/sys/i386/i386/machdep.c 1.257 +0 -9 src/sys/pc98/i386/machdep.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200202030913.g139Dxr66997>