This does not seem to affect my Cyrix 6x86MX/233. In single user mode, it just hung until I ^C'd it. Running Linux 2.2.1 /proc/cpuinfo: processor : 0 vendor_id : CyrixInstead cpu family : 6 model : 2 model name : 6x86MX 2.5x Core/Bus Clock stepping : 7 cpu_mhz : 187.399276 fdiv : no hlt : no sep : no f00f : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu de tsc msr cx8 pge cmov mmx bogomips : 186.78 KeyID 1024D/73348CA0 Fingerprint 8EFC 7F10 F26C 55A8 458A 38B0 890F 384F 7334 8CA0 Public key available at http://www.vitelus.com/aaronl/pubkey.asc On Thu, 4 Feb 1999, Ragnar Hojland Espinosa wrote: > I emailed Cyrix a few months ago, and even managed to get a "oh, we will > look at it" thanks to Rafael Reilova, but that was it till today. A > couple of people did report it, effectively, froze (most of) their Cyrix > CPUs while running the opcodes below as non priviledged user. > > While I don't have the enough knowledge to assure this _is_ a CPU bug, it > certainly looks like one to me (NO_LOCK isn't a workaround, btw). > > 0x804a368 <the_data>: cwtl > 0x804a36a <the_data+2>: orl $0xe6ebe020,%eax > 0x804a36f <the_data+7>: jle 0x804a368 <the_data> > > Here is the code (tested with linux, any version): > > /* Please compile without optimizations */ > unsigned char the_data[] = { 62, 152, 13, 32, 224, 235, 230, 126, 247 }; > > void (*badboy)(); > int main (int argc, char **argv) > { > badboy = (void(*)())(the_data); > asm ("movl badboy,%eax"); > asm ("call *%eax"); > > return 0; > } > > If you try it, please send me your /proc/{cpuinfo,version} and if it > freezes or not. > -- > ____/| Ragnar Hojland (ragnarat_private) Fingerprint 94C4B > \ o.O| 2F0D27DE025BE2302C > =(_)= "Thou shalt not follow the NULL pointer for 104B78C56 B72F0822 > U chaos and madness await thee at its end." hkp://keys.pgp.com >
This archive was generated by hypermail 2b30 : Fri Apr 13 2001 - 14:32:57 PDT