This is basically a resend of v3 with commit message changes. Paolo, if there are no further comments, can you please pick this up for 3.1? Thanks!
--- As requested by Igor, assign and verify "slot" and "addr" in the pre_plug handler. Factor out the compatibility handling/configuration for detecting the alignment to be used when searching for an address in guest physical memory for a memory device. This is another part of the original series [PATCH v4 00/14] MemoryDevice: use multi stage hotplug handlers This refactoring is the last step before factoring out pre_plug, plug and unplug logic of memory devices completely into memory-device.c v3 -> v4: - Added rb/acks - Fixed up patch description of last patch v2 -> v3: - "util/oslib-win32: indicate alignment for qemu_anon_ram_alloc()" -- take allocation granularity into account -- drop comment - "pc-dimm: assign and verify the "addr" property during pre_plug" -- compat_align -> legacy_align -- shortened align detection as proposed by Igor -- trace address asignment in pre_plug v1 -> v2: - dropped "machine: factor out enforce_aligned_dimm into memory_device_align" - dropped "pc-dimm/memory-device: detect alignment internally" - added "util/oslib-win32: indicate alignment for qemu_anon_ram_alloc()" -- indicate the alignment and therefor simplify compat handling for Windows as we can ... - added "pc: drop memory region alignment check for 0" -- ... drop a check for memory_region_get_alignment(mr), allowing us to factor out compat handling for pc DIMM/NVDIMM alignment in a clean way. - "pc-dimm: assign and verify the "addr" property during pre_plug" -- Default to "memory_region_get_alignment(mr)" if no compat alignment has been specified. David Hildenbrand (4): pc-dimm: assign and verify the "slot" property during pre_plug util/oslib-win32: indicate alignment for qemu_anon_ram_alloc() pc: drop memory region alignment check for 0 pc-dimm: assign and verify the "addr" property during pre_plug hw/i386/pc.c | 16 ++++------- hw/mem/pc-dimm.c | 61 +++++++++++++++++++++------------------- hw/ppc/spapr.c | 14 ++++++--- include/hw/mem/pc-dimm.h | 5 ++-- util/oslib-win32.c | 15 ++++++++-- 5 files changed, 63 insertions(+), 48 deletions(-) -- 2.17.1