----- Original Message -----
> From: "Jan Kiszka" <jan.kis...@siemens.com>
> To: "Andreas Färber" <afaer...@suse.de>
> Cc: "Igor Mammedov" <imamm...@redhat.com>, "Anthony Liguori" 
> <aligu...@us.ibm.com>, qemu-devel@nongnu.org, "Igor
> Mammedov" <niall...@gmail.com>, "Paolo Bonzini" <pbonz...@redhat.com>
> Sent: Friday, June 8, 2012 2:36:53 PM
> Subject: Re: [Qemu-devel] [PATCH qom-next 04/59] pc: Add CPU as       
> /machine/cpu[n]
>
> On 2012-06-08 14:34, Andreas Färber wrote:
> > Am 08.06.2012 14:05, schrieb Igor Mammedov:
> >> On Fri, Jun 08, 2012 at 11:11:11AM +0200, Andreas Färber wrote:
> >>> Another factor that is making this slightly difficult is that
> >>> there are
> >>> three APIC subclasses. Currently they all have an instance_size
> >>> of
> >>> sizeof(APICCommonState) so it could be created in-place if it
> >>> actually
> >>> is a part (child<>) of the CPU wrt hot-plug. Creating objects
> >>> with
> >>> object_new() in QOM instance_init is forbidden.
> >> Any particular reason why object_new() in intifn is not
> >> acceptable?
> >
> > It allocates memory, which may fail. The initfn must not fail, the
> > realizefn may return an Error object.
>
> Since when do we fail gracefully on OOM again?
Maybe Andreas means that we cannot report error to caller?
If it's a case then lets pass error to object_new() and fail gracefully
or simply abort on OOM.

BTW:
in-place creation looks ugly compared to object_new(), not mentioning
complications if being initialized object could be of different sizes.

>
> Jan
>
> --
> Siemens AG, Corporate Technology, CT T DE IT 1
> Corporate Competence Center Embedded Linux
>
>

Reply via email to