Por que / proc / cpuinfo mostra diferentes flags para núcleos na mesma cpu?

6

cat / proc / cpuinfo no meu sistema me dá sinalizadores diferentes para meus 2 núcleos. Alguém pode me explicar por quê? Estou executando o Ubuntu 10.10 kernel 2.6.35-24-genérico.

processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 CPU         E8400  @ 3.00GHz
stepping        : 10
cpu MHz         : 2999.820
cache size      : 6144 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
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 aperfmperf pni monitor tm2 ssse3 lahf_lm dts
bogomips        : 5999.64
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 23
model name      : Intel(R) Core(TM)2 CPU         E8400  @ 3.00GHz
stepping        : 10
cpu MHz         : 2999.820
cache size      : 6144 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fpu             : yes
fpu_exception   : yes
cpuid level     : 13
wp              : yes
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 aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 xsave lahf_lm dts tpr_shadow vnmi flexpriority
bogomips        : 6000.04
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

Eu notei esse problema ao tentar configurar meu sistema para o KVM. Eu sou incapaz de carregar o módulo kvm_intel e não tenho outro indício porque isso é assim. Um dos sinalizadores de cpu me mostra que eu apoio vmx mas não o outro.

Obrigado

    
por Vincent 21.01.2011 / 03:10

2 respostas

2

Já tentou inicializar um kernel / distribuição diferente? Talvez seja apenas um bug do kernel. Experimente um LiveCD fedora, que deve ser adequadamente diferente do seu Ubuntu.

    
por 21.01.2011 / 05:56
1

Parece que a segunda CPU tem esses sinalizadores extras (comentários de linux-2.6.38-rc1/arch/x86/include/asm/cpufeature.h ):

dtes64 - 64-bit debug store
ds_cpl - CPL Qual. Debug Store
vmx - hardware virtualization
smx - safer mode
est - enhanced speedstep
cx16 - CMPXCHG16B
xtpr - send tax priority messages
pdcm - performance capabilities
sse4_1 - sse 
xsave - XSAVE/XRSTOR/XSETBV/XGETBV
tpr_shadow - Intel TPR shadow
vnmi - Intel virtual NMI
flexpriority - Intel Flex Priority

Eu não posso tirar conclusões. Um monte deles parece fazer com a virtualização, mas isso é tudo que posso ver.

É possível que você tenha desativado alguns desses recursos em sua BIOS para o segundo cpu? Você está passando algum parâmetro do kernel na inicialização que possa influenciar a configuração do processador? Isso é tudo em que consigo pensar.

Esta pergunta mais antiga sobre falhas de servidor sobre sinalizadores de cpu parece relevante mas não é útil.

    
por 21.01.2011 / 04:19