Le 07/06/2021 à 10:28, Philippe Mathieu-Daudé a écrit : > On 6/7/21 9:33 AM, Laurent Vivier wrote: >> Le 02/06/2021 à 12:49, Philippe Mathieu-Daudé a écrit : >>> Cc'ing qemu-trivial@ >>> >>> On 3/18/21 4:39 PM, Philippe Mathieu-Daudé wrote: >>>> ping? >>>> >>>> On 3/7/21 8:48 AM, Philippe Mathieu-Daudé wrote: >>>>> MemoryRegion names is cached on first call to memory_region_name(), >> >> It is cached on first call but now that it is used in the trace function, >> does it mean it will be >> always allocated in memory? > > Yes, this is how memory_region_name() works: > > const char *memory_region_name(const MemoryRegion *mr) > { > if (!mr->name) { > ((MemoryRegion *)mr)->name = > g_strdup(object_get_canonical_path_component(OBJECT(mr))); > } > return mr->name; > }
OK, in fact I didn't see it was called from inside a "if (trace_event_get_state_backends(TRACE_MEMORY_REGION_OPS_XXX))" and was worrying about the memory for the string always allocated. So it looks good. Thanks, Laurent