[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize t
From: |
Markus Armbruster |
Subject: |
Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks |
Date: |
Tue, 18 Feb 2020 10:29:44 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) |
Peter Maydell <address@hidden> writes:
> On Mon, 17 Feb 2020 at 17:20, Philippe Mathieu-Daudé <address@hidden> wrote:
>> Quick check with TYPE_BITBAND which is a SysBus device, we have:
>>
>> static void bitband_realize(DeviceState *dev, Error **errp)
>> {
>> BitBandState *s = BITBAND(dev);
>>
>> if (!s->source_memory) {
>> error_setg(errp, "source-memory property not set");
>> return;
>> }
>>
>> address_space_init(&s->source_as, s->source_memory, "bitband-source");
>> }
>>
>> Do we need the equivalent:
>>
>> static void bitband_unrealize(DeviceState *dev, Error **errp)
>> {
>> BitBandState *s = BITBAND(dev);
>>
>> address_space_destroy(&s->source_as);
>> }
>>
>> Or instead mark the device user_creatable=false because of the link to a
>> TYPE_MEMORY_REGION?
>
> I don't believe that this device is user-creatable. The
> base class sysbus_device_class_init() sets user_creatable
> to false by default for all sysbus devices, and a sysbus
> device which wants to opt into being user-created has to
> set it to true.
As far as I can tell, you additionally have to
machine_class_allow_dynamic_sysbus_dev(). Sysbus is special.
> Also the device's type name string is "ARM,bitband-memory"
> and the -device option at least does not like the comma
> in the middle of the name, so I don't know how you'd
> create it on the command line even if it wasn't marked
> not user-creatable.
Double the comma.
If I remember correctly, the use of comma in type comes from IEEE-1275.
It's quite inappropriate for QEMU.
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, (continued)
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Corey Minyard, 2020/02/16
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Peter Maydell, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Philippe Mathieu-Daudé, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Peter Maydell, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Philippe Mathieu-Daudé, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Peter Maydell, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Philippe Mathieu-Daudé, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Peter Maydell, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Philippe Mathieu-Daudé, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Peter Maydell, 2020/02/17
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks,
Markus Armbruster <=
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Markus Armbruster, 2020/02/18
- Re: [PATCH 1/2] hw/ipmi/bmc: Delay timer_new_ns() from init to realize to avoid memleaks, Markus Armbruster, 2020/02/17
Re: [PATCH 0/2] hw: Delay timer_new() from init to realize to avoid memleaks, Richard Henderson, 2020/02/15