qemu-devel
[Top][All Lists]
Advanced

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

Re: [RFC v1 09/10] i386: split cpu.c and defer x86 models registration


From: Claudio Fontana
Subject: Re: [RFC v1 09/10] i386: split cpu.c and defer x86 models registration
Date: Mon, 16 Nov 2020 18:53:09 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0

On 11/10/20 4:23 PM, Eduardo Habkost wrote:
> On Tue, Nov 10, 2020 at 11:41:46AM +0100, Paolo Bonzini wrote:
>> On 10/11/20 11:04, Daniel P. Berrangé wrote:
>>>
>>> ie, we should have one class hierarchy for CPU model definitions, and
>>> one class hierarchy  for accelerator CPU implementations.
>>>
>>> So at runtime we then get two object instances - a CPU implementation
>>> and a CPU definition. The CPU implementation object should have a
>>> property which is a link to the desired CPU definition.
>>
>> It doesn't even have to be two object instances.  The implementation can be
>> nothing more than a set of function pointers.
> 
> A set of function pointers is exactly what a QOM interface is.
> Could the methods be provided by a TYPE_X86_ACCEL interface type,
> implemented by the accel object?
> 

Hi Eduardo, Paolo,

conceptually this is also an attractive option, but there are a few issues I 
can see with this approach,

the first and most evident of which is that accel classes are used only for 
softmmu,
while we need the tcg cpu (or TYPE_X86_ACCEL interface to be used by the cpu) 
for user mode too.

I'll start working on some new prototype, trying to incorporate some ideas 
exchanged here, see what comes out.

Thanks,

Ciao,

CLaudio



reply via email to

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