Il 09/08/2013 16:32, Alex Bligh ha scritto:
> 
> On 9 Aug 2013, at 11:06, Paolo Bonzini wrote:
> 
>>> +/**
>>> + * aio_timer_new:
>>> + * @ctx: the aio context
>>> + * @type: the clock type
>>> + * @scale: the scale
>>> + * @cb: the callback to call on timer expiry
>>> + * @opaque: the opaque pointer to pass to the callback
>>> + *
>>> + * Generate a new timer attached to the context @ctx.
>>> + *
>>> + * Returns: a pointer to the new timer
>>> + */
>>> +static inline QEMUTimer *aio_timer_new(AioContext *ctx, QEMUClockType type,
>>> +                                       int scale,
>>> +                                       QEMUTimerCB *cb, void *opaque)
>>> +{
>>> +    return timer_new(ctx->tlg[type], scale, cb, opaque);
>>> +}
>>
>> Since we're doing a new API, I would prefer to have it as timer_init and
>> aio_timer_init.  We can remove the allocation completely, it is a
>> useless indirection and we misuse it since we hardly ever call
>> qemu_free_timer.
> 
> Would that not require change the huge number of qemu_timer_new references
> to use this new API? That sounds less than automatic! Not in favour of
> that one.

qemu_timer_new can remain for now (only waiting for the next
mass-rewriting script to be written).  I would just prefer to have the
new AioContext-/TimerList-aware not do any allocation.

Paolo

Reply via email to