[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 2/3] push CPUID level to 4 to allow Intel multic
From: |
Avi Kivity |
Subject: |
Re: [Qemu-devel] [PATCH 2/3] push CPUID level to 4 to allow Intel multicore decoding |
Date: |
Thu, 20 Aug 2009 14:06:06 +0300 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090814 Fedora/3.0-2.6.b3.fc11 Lightning/1.0pre Thunderbird/3.0b3 |
On 08/20/2009 01:36 PM, Andre Przywara wrote:
Avi Kivity wrote:
On 08/19/2009 04:42 PM, Andre Przywara wrote:
Intel CPUs store the number of cores in CPUID leaf 4. So push
the maxleaf value to 4 to allow the guests access to this leaf.
There's a slight compatibility risk here. If a guest has broken
handling for cpuid level 4, then upgrading qemu would cause it to
behave differently.
I don't think that's an issue for this patch, just highlighting the
need for a systematic treatment of backward compatibility.
If you have real headaches about it, I have two options:
It's really an imaginary headache.
What about allowing level to be specified at -cpu command line? This
would allow users to say -cpu qemu64,level=2 if they experience
problems. The default would stay at level 4.
I think this is the best option.
The other option would be to push the level only to four if we use
more than one thread or core.
In my research it turned out that Intel pushed the level beyond 4 with
Pentium4 Prescott (probably with the introduction of real dual core
chips to differentiate threads and cores), so this is quite some time
ago. So I doubt that there are serious issues out there.
I only pointed this out as an example of a new feature that has an
effect even if it is not used, something we should beware of.
The only problem I can think of is that the advertised cache topology
is somehow bogus and could confuse OSes.
So long as it's smaller than contemporary caches we should be fine.
btw, does -cpu host use the host cpu cache information?
--
error compiling committee.c: too many arguments to function
[Qemu-devel] [PATCH 1/3] extend -smp parsing to include cores= and threads= options, Andre Przywara, 2009/08/19
[Qemu-devel] [PATCH 3/3] set CPUID bits to present cores and threads topology, Andre Przywara, 2009/08/19