On 12/21/2013 5:54 PM, Dan Anderson wrote:
On 12/20/2013 10:29 AM, David Miller wrote:
From: "Misaki.Miyashita via RT" <r...@openssl.org>
Date: Fri, 20 Dec 2013 06:59:18 +0100

Hi,

We don't have RNG instructions, and calling _sparcv9_random() causes
SIGILL and debug tools (i.e. gdb and mdb) stops when libcrypto.so is
loaded (at _init()).
% mdb `which openssl`
  > ::run
mdb: stop on SIGILL
mdb: target stopped at:
libcrypto.so.1.0.0`_sparcv9_random+4:   random    %d8
Do not do this, the instruction is valid and we'd like to detect
the presence of it on chips that actually have it.f

David,

I think we need to clarify why this should be done. The SPARC "random" instruction was designed at Sun Microsystems (now Oracle Corporation) for a never-released processor several years ago. For SPARC, randomness is obtained by reading a special control register. The SPARC "random" instruction was never implemented and never will be implemented. Please remove code to detect this instruction. Thanks!

Dan

P.S., as a separate issue, please consider using the Solaris getisax(2) to determine SPARC processor features.

Dan




We use SIGILL sequence to detect presence for all crypto instructions,
so if your logic would apply to all of the instructions we try to
detect.

This is the standard way that openssl probes for instruction
presence.
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List openssl-dev@openssl.org
Automated List Manager majord...@openssl.org




--
uosบǝpuɐ uɐp dan.ander...@oracle.com, Oracle Solaris, San Diego, +1 858-526-9418

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to