Hi,

I got a user reporting a problem on Cyrix CPUs.  The problem is
that cpuid detects the rdrand instructions from intel, and then
tries to use that instruction and gets an illegal instruction.

/proc/cpuinfo looks like:
processor       : 0
vendor_id       : CyrixInstead
cpu family      : 6
model           : 2
model name      : M II 3.5x Core/Bus Clock
stepping        : 8
cpu MHz         : 233.895
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu de tsc msr cx8 pge cmov mmx cyrix_arr
bogomips        : 467.79
clflush size    : 32
cache_alignment : 32
address sizes   : 32 bits physical, 32 bits virtual
power management:

And it has this in OPENSSL_ia32cap_P:
OPENSSL_ia32cap_P[0] = 0x0080A535
OPENSSL_ia32cap_P[1] = 0x64616574

The code then sees bit 62 being on and the library tries to use
the instruction.


The bug report is at:
http://bugs.debian.org/699692


Kurt

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

Reply via email to