qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH] target-ppc: Register CPU class per family o


From: Alexey Kardashevskiy
Subject: Re: [Qemu-devel] [RFC PATCH] target-ppc: Register CPU class per family only when needed
Date: Tue, 17 Mar 2015 09:47:26 +1100
User-agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0

On 03/16/2015 09:40 PM, Andreas Färber wrote:
Am 16.03.2015 um 05:58 schrieb Alexey Kardashevskiy:
On 03/06/2015 12:17 AM, Alexander Graf wrote:
On 05.03.15 02:56, Alexey Kardashevskiy wrote:
At the moment when running in KVM mode, QEMU registers "host" class to
match the current CPU PVR value. It also registers another CPU class
with a CPU family name os if we run QEMU on POWER7 machine, "host" and
"POWER7" classes are created, this way we can always use "-cpu POWER7"
on the actual POWER7 machine.

The existing code uses DeviceClass::desc field of the CPU class as
a source for the class name; it was pointed out that it is wrong to use
user-visible string as a type name.

This adds a common CPU class name into PowerPCCPUClass struct.
This makes registration of a CPU named after the family conditional -
PowerPCCPUClass::common_cpu_name has to be non-zero. Only POWER7/POWER8
families have this field initialized by now.

Signed-off-by: Alexey Kardashevskiy <address@hidden>

LGTM. Andreas, do you agree?


Ping?

No, I don't agree. Inventing a new class field just to distinguish
POWER7/POWER8 here seems like a weird idea,

As weird as PVR itself :)

and the code placement is not fixed either.

What is wrong with the code placement?


I gathered that you want -cpu POWER7 and -cpu POWER8 to work on POWER8
hardware and -cpu POWER7 on POWER7, for migration purposes, correct?

What exact PVRs have you tested on and why does it not work without
those types despite the PVR masking? To investigate I need a test case.

The real host is 003f 0201. -cpu POWER7 will fail without my patches as POWER7 is alias of 003f 0203.

Or real host 004b 0201 - -cpu POWER8 will try 004d 0100 and fail.


Is this just a question of the generic family type being abstract and
needing an updated PVR value?

May be. That could help too I suppose.

Which other fields are actually used?

Sorry, used where? :)



--
Alexey



reply via email to

[Prev in Thread] Current Thread [Next in Thread]