Re: [PATCH] Introduce QEMU_NEW()

malc
2011-07-25T14:47:04Z

On Mon, 25 Jul 2011, Anthony Liguori wrote:

> On 07/25/2011 09:30 AM, Max Filippov wrote:
> > > > > > > > qemu_malloc() is type-unsafe as it returns a void pointer.
> > > > > > > > Introduce
> > > > > > > > QEMU_NEW() (and QEMU_NEWZ()), which return the correct type.
> > > > > > >
> > > > > > > Just use g_new() and g_new0()
> > > > > > >
> > > > > >
> > > > > > These bypass qemu_malloc(). Are we okay with that?
> > > > >
> > > > > Yes. We can just make qemu_malloc use g_malloc.
> > > >
> > > > It would be also possible to make g_malloc() use qemu_malloc(). That
> > > > way we could keep the tracepoints which would lose their value with
> > > > g_malloc() otherwise.
> > >
> > > Or just add tracepoints to g_malloc()...
> > >
> > > But yeah, the point is, we ought to unify to a standard library function
> > > instead of inventing our own version of everything.
> >
> > What about zero-size allocations for which g_malloc would return NULL?
>
> Using a standard, well documented, rich interface trumps any arguments about
> the semantics of zero-sized allocation.

Right right.. only g_new aborts on zero..

--
mailto:av1474@comtv.ru