On 21 April 2018 at 09:52, Cédric Le Goater <c...@kaod.org> wrote: > On 04/20/2018 02:09 PM, Peter Maydell wrote: >> Notes: >> * any device that registers a ramblock globally is a bit dodgy, because >> it means you can't have more than one of it (the ramblock names would >> clash). We should fix those devices for the cases where we're willing >> to take the migration compat break. > > There are quite a few models calling memory_region_init_ram() with > a NULL owner, see below. Should we fix all these ?
Note that I said "any device". A board model that uses a NULL owner (or does a register_global) is fine, because by definition there is only one board. (The "null owner" case is really intended for this -- traditionally there was no useful owner object available to board code, though these days MachineState is an object so it could be used.) Most of the examples you cite are in board code and are fine. Where they are in devices we should indeed consider making them pass in the device pointer as the owner, though. thanks -- PMM