Request: Bug Report
Hello,
I recently compiled OpenSSL 1.0.2(c,d) for Solaris 5.10 using GCC 4.8.2 on an
UltraSPARC 45 and our group tested it on several different types of other
systems (V245, T4, T3, etc...) and it runs as expected on all systems except
the T3 where it hangs - even for a simple call like "openssl version". The
process continues normally when sent either a SIGBUS or SIGILL.
I believe I've tracked it down to the function "OPENSSL_cpuid_setup" in the
file "crypto/sparcv9cap.c" after the initial sigaction calls to set the signal
handlers for SIGILL and SIGBUS and before the trailing sigaction calls to reset
the handlers for SIGILL and SIGBUS. There's a partial dtrace listing below,
generated by my colleague Carolyn, with the last output lines showing the
sigaction calls for SIGILL then SIGBUS (the trailing sigaction calls are in the
reverse order in the code).
The "OPENSSL_cpuid_setup" function supports reading the environment variable
"OPENSSL_sparcv9cap" to skip further processing and setting this variable (to
anything) prevents the process from hanging, so I'm also encouraged that the
issue resides within this function, but am, obviously, hesitant to rely on this
as an operational solution ...
Is there any other information I can provide you and/or anything I can do on my
side to investigate and resolve this.
Thank you,
- Rick
4503: lwp_sigmask(SIG_SETMASK, 0xFFBFF827, 0x0000FFF7) = 0xFFBFFEFF
[0x0000FFFF]
4503: sigaction(SIGILL, 0xFFBFEC10, 0xFFBFECF0) = 0
4503: new: hand = 0xFEF4F824 mask = 0xFFBFFEFF 0x0000FFFF 0 0 flags =
0x0000
4503: old: hand = 0x00000000 mask = 0 0 0 0 flags = 0x0000
4503: sigaction(SIGBUS, 0xFFBFEC10, 0xFFBFED10) = 0
4503: new: hand = 0xFEF4F824 mask = 0xFFBFFEFF 0x0000FFFF 0 0 flags =
0x0000
4503: old: hand = 0x00000000 mask = 0 0 0 0 flags = 0x0000
_______________________________________________
openssl-bugs-mod mailing list
openssl-bugs-...@openssl.org
https://mta.openssl.org/mailman/listinfo/openssl-bugs-mod
_______________________________________________
openssl-dev mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev