Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 538988 - app-portage/cpuinfo2cpuflags - cpuinfo2cpuflags-x86 suggests mmxext and sse3 for a /proc/cpuinfo that does not report them as supported
Summary: app-portage/cpuinfo2cpuflags - cpuinfo2cpuflags-x86 suggests mmxext and sse3 ...
Status: RESOLVED INVALID
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Third-Party Tools (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Michał Górny
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-02-05 22:04 UTC by Bob's Your Uncle
Modified: 2015-07-14 07:42 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bob's Your Uncle 2015-02-05 22:04:11 UTC
cpuinfo does not show mmxext or sse3, but the python script does.  Host is a virtual machine:

# cat /proc/cpuinfo 
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 2
model name      : QEMU Virtual CPU version 0.9.1
stepping        : 3
cpu MHz         : 0.000
cache size      : 512 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx lm nopl pni hypervisor
bogomips        : 4530.17
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:


# cpuinfo2cpuflags-x86 
CPU_FLAGS_X86="mmx mmxext sse sse2 sse3"
Comment 1 Andrei Slavoiu 2015-02-06 00:57:46 UTC
Well, the corresponding flag for sse3 is pni, and that is present in your cpuinfo. 

About mmxext, it is *almost* a subset of sse but I'm not sure it can be assumed when sse is exposed. /usr/portage/profiles/desc/cpu_flags_x86.desc claims that it is safe to assume mmxext whenever sse is present, so if that is wrong that is the place to fix.
Comment 2 Jeroen Roovers (RETIRED) gentoo-dev 2015-02-06 10:03:54 UTC
I see mmxext where that isn't reported in /proc/cpuinfo, but mmxext is supposed to be a subset of sse, so it should be supported where sse is.

$ cpuinfo2cpuflags-x86 
CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 sse4_1 ssse3"
$ grep ^flags /proc/cpuinfo | head -n1
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm dtherm tpr_shadow vnmi flexpriority
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2015-07-14 07:42:06 UTC
Sorry for missing this bug earlier.

mmxext is a subset of sse, so it's supported everywhere sse is supported (see AMD developer's manual, there's no mnemonic that's purely mmxext, all are mmxext||sse).

sse3 is called 'pni' in cpuinfo, for no good reason.