qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [Qemu-ppc] [PATCH v4 6/9] ppc/xics: Split ICS into ics-


From: Nikunj A Dadhania
Subject: Re: [Qemu-devel] [Qemu-ppc] [PATCH v4 6/9] ppc/xics: Split ICS into ics-base and ics class
Date: Tue, 20 Sep 2016 15:11:56 +0530
User-agent: Notmuch/0.21 (https://notmuchmail.org) Emacs/25.0.94.1 (x86_64-redhat-linux-gnu)

Cédric Le Goater <address@hidden> writes:
> On 09/20/2016 10:10 AM, Nikunj A Dadhania wrote:
>>>>>>>> -static void ics_reject(ICSState *ics, int nr);
>>>>>>>> -static void ics_resend(ICSState *ics, int server);
>>>>>>>> -static void ics_eoi(ICSState *ics, int nr);
>>>>>>>> +static void ics_reject(ICSState *ics, uint32_t nr)
>>>>>>>> +{
>>>>>>>> +    ICSStateClass *k = ICS_GET_CLASS(ics);
>>>>>>>
>>>>>>> Shouldn't that be ICS_BASE_GET_CLASS()
>>>>>>
>>>>>> The class hierarchy is something like this:
>>>>>>
>>>>>> ICS_BASE -> ICS_SIMPLE -> ICS_KVM
>>>>>
>>>>> yes. but if we called  ics_* with an instance of an ics class which is 
>>>>> not a ICS_SIMPLE class that will break.
>>>>
>>>> Correct
>>>>
>>>>> ICSStateClass is the baseclass, whenever we call methods on a ICSState* 
>>>>> object, we should use the method defines in ICSStateClass.
>>>>
>>>> Hmm, in that case I need to initialize base class methods in
>>>> instance_init of ics_simple
>>>
>>> yes but this is done, no ? I see : 
>>>
>>> static void ics_simple_class_init(ObjectClass *klass, void *data)
>>> {
>>>     DeviceClass *dc = DEVICE_CLASS(klass);
>>>     ICSStateClass *isc = ICS_BASE_CLASS(klass);
>> 
>> Right.
>> 
>> Currently, we have this:
>> 
>> +    ICSStateClass *isc = ICS_CLASS(klass);
>
> oh yes and same in the kvm ICS. The name are bit confusing as we are 
> introducing SIMPLE but not the associated macros.
>
> You can check on my 2.8 github branch, I got something working there :
>
>       
> https://github.com/legoater/qemu/commit/d0b492707debc7192f0860e2c5fc2daa9fd453ac

Cool. :-)

Thanks for testing.

Regards,
Nikunj




reply via email to

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