On 19.12.2025 14:32, Oleksii Kurochko wrote:
> 
> On 12/18/25 7:15 PM, Andrew Cooper wrote:
>>>   int vcpu_vgic_free(struct vcpu *v)
>>>   {
>>> -    xfree(v->arch.vgic.private_irqs);
>>> +    xfree(v->arch.vgic->private_irqs);
>>> +    xfree(v->arch.vgic);
>>> +
>>>       return 0;
>>>   }
>> Free functions should be idempotent.  This was buggy before, even moreso
>> now.
> 
> Was it really buggy before in terms of idempotent.
> 
> It seems like xfree() can handle the case when v->arch.vgic.private_irqs is 
> NULL.
> Should I still have:
>   if ( v->arch.vgic->private_irqs )
>      XFREE(v->arch.vgic->private_irqs);
> ?

No, and iirc Andrew also didn't ask for this.

Jan

Reply via email to