lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 22 Jul 2008 20:31:53 -0400
From:	"H. Peter Anvin" <hpa@...or.com>
To:	Jeff Garzik <jeff@...zik.org>
CC:	"Luis R. Rodriguez" <mcgrof@...il.com>,
	linux kernel <linux-kernel@...r.kernel.org>,
	"H. Peter Anvin" <hpa@...nel.org>,
	Ivan Seskar <Seskar@...lab.rutgers.edu>,
	jfm3 <jfm3@...lab.rutgers.edu>, Sujith <m.sujith@...il.com>
Subject: Re: Bug on 2.6.26 - x86 VIA Nehemiah CentaurHauls processor cannot
 boot

Jeff Garzik wrote:
>>
>> I am pretty sure CONFIG_X86_GENERIC doesn't disable CMOV, and since 
>> CMOV is a separate CPUID flag it's all good (if the chip doesn't have 
>> it, it'll trap.)
> 
> It's generally more an issue of making sure the compiler is not 
> instructed to issue cmov (-march=i686).
> 

You're missing the point, though.  The issues at hand are:

- Luis' distributor is compiling kernels without CONFIG_X86_GENERIC.
- VIA has CPUs with family == 6 that don't support long NOPs.
- There is no CPUID flag for long NOPs.

So the VIA chips in question sail through the system that's supposed to 
warn that the kernel is using an unsupported feature and have a hard 
crash, instead.

A lot of virtualizers do the same thing, since they don't use proper 
vendor IDs and instead mimic real chips, sigh.

	-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ