cvs commit: src/sys/compat/ia32 ia32_signal.h
Peter Wemm
peter at FreeBSD.org
Tue Apr 5 15:41:49 PDT 2005
peter 2005-04-05 22:41:49 UTC
FreeBSD src repository
Modified files:
sys/compat/ia32 ia32_signal.h
Log:
Fix 32 bit signals on amd64. It turns out that I was sign extending
the register values coming back from sigreturn(2). Normally this wouldn't
matter because the 32 bit environment would truncate the upper 32 bits
and re-save the truncated values at the next trap. However, if we got
a fast second signal and it was pending while we were returning from
sigreturn(2) in the signal trampoline, we'd never have had a chance to
truncate the bogus values in 32 bit mode, and the new sendsig would get
an EFAULT when trying to write to the bogus user stack address.
Revision Changes Path
1.7 +72 -72 src/sys/compat/ia32/ia32_signal.h
More information about the cvs-src
mailing list