public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PROBLEM] x86: result of verify_local_APIC() is ignored
@ 2014-02-07  0:45 Jon
  2014-02-09 12:39 ` Ingo Molnar
  0 siblings, 1 reply; 2+ messages in thread
From: Jon @ 2014-02-07  0:45 UTC (permalink / raw)
  To: linux-kernel; +Cc: tglx, mingo, hpa, x86

In arch/x86/kernel/apic/apic.c there is a function called
verify_local_APIC() that does some APIC checks. The part where it writes
to the APIC ID register can cause CPU #15 to not come online under
VMware ESXi on 32-bit kernels if the virtual hardware version is 8.

I noticed that Ingo actually removed this exact chunk of code from
arch/i386/kernel/apic.c in 2.6.4, but since it was left in the x86_64
copy it came back when the two were merged.
http://permalink.gmane.org/gmane.linux.kernel.commits.head/27538

The Intel architecture manuals seem to agree and notes that the recent
Intel CPUs do not allow writing to the register which means that
machines are actually failing this check... which doesn't matter becuase
none of the callers are checking the return value of this function
anyway.

-- 
Jon
X(7): A program for managing terminal windows. See also screen(1).

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PROBLEM] x86: result of verify_local_APIC() is ignored
  2014-02-07  0:45 [PROBLEM] x86: result of verify_local_APIC() is ignored Jon
@ 2014-02-09 12:39 ` Ingo Molnar
  0 siblings, 0 replies; 2+ messages in thread
From: Ingo Molnar @ 2014-02-09 12:39 UTC (permalink / raw)
  To: linux-kernel, tglx, mingo, hpa, x86


* Jon <nuxi@vault24.org> wrote:

> In arch/x86/kernel/apic/apic.c there is a function called
> verify_local_APIC() that does some APIC checks. The part where it writes
> to the APIC ID register can cause CPU #15 to not come online under
> VMware ESXi on 32-bit kernels if the virtual hardware version is 8.
> 
> I noticed that Ingo actually removed this exact chunk of code from
> arch/i386/kernel/apic.c in 2.6.4, but since it was left in the x86_64
> copy it came back when the two were merged.
> http://permalink.gmane.org/gmane.linux.kernel.commits.head/27538
> 
> The Intel architecture manuals seem to agree and notes that the recent
> Intel CPUs do not allow writing to the register which means that
> machines are actually failing this check... which doesn't matter becuase
> none of the callers are checking the return value of this function
> anyway.

I guess we could remove that from the 64-bit code too. Would you like 
to send a tested patch?

Thanks,

	Ingo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-02-09 12:39 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-07  0:45 [PROBLEM] x86: result of verify_local_APIC() is ignored Jon
2014-02-09 12:39 ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox