it will notify ACPI subsystem about added DimmDevice Signed-off-by: Igor Mammedov <imamm...@redhat.com> --- hw/mem-hotplug/dimm.c | 13 +++++++++++++ include/sysemu/sysemu.h | 3 +++ stubs/Makefile.objs | 1 + stubs/memory_hotplug.c | 6 ++++++ 4 files changed, 23 insertions(+), 0 deletions(-) create mode 100644 stubs/memory_hotplug.c
diff --git a/hw/mem-hotplug/dimm.c b/hw/mem-hotplug/dimm.c index 7e3e383..4ecc590 100644 --- a/hw/mem-hotplug/dimm.c +++ b/hw/mem-hotplug/dimm.c @@ -22,6 +22,17 @@ #include "qemu/config-file.h" #include "qemu/bitmap.h" #include "qemu/range.h" +#include "qemu/notify.h" +#include "sysemu/sysemu.h" + +/* Memory hot-plug notifiers */ +static NotifierList mem_added_notifiers = + NOTIFIER_LIST_INITIALIZER(mem_added_notifiers); + +void qemu_register_mem_added_notifier(Notifier *notifier) +{ + notifier_list_add(&mem_added_notifiers, notifier); +} static void dimm_bus_initfn(Object *obj) { @@ -204,6 +215,8 @@ static void dimm_realize(DeviceState *dev, Error **errp) g_assert(dc->register_memory); dc->register_memory(bus, dimm, errp); + + notifier_list_notify(&mem_added_notifiers, dev); } static void dimm_class_init(ObjectClass *klass, void *data) diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index 2fb71af..9abbf71 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -156,6 +156,9 @@ void drive_hot_add(Monitor *mon, const QDict *qdict); /* CPU hotplug */ void qemu_register_cpu_added_notifier(Notifier *notifier); +/* Memory hotplug */ +void qemu_register_mem_added_notifier(Notifier *notifier); + /* pcie aer error injection */ void pcie_aer_inject_error_print(Monitor *mon, const QObject *data); int do_pcie_aer_inject_error(Monitor *mon, diff --git a/stubs/Makefile.objs b/stubs/Makefile.objs index 9b701b4..2476c3d 100644 --- a/stubs/Makefile.objs +++ b/stubs/Makefile.objs @@ -25,3 +25,4 @@ stub-obj-y += vm-stop.o stub-obj-y += vmstate.o stub-obj-$(CONFIG_WIN32) += fd-register.o stub-obj-y += cpus.o +stub-obj-y += memory_hotplug.o diff --git a/stubs/memory_hotplug.c b/stubs/memory_hotplug.c new file mode 100644 index 0000000..60844f1 --- /dev/null +++ b/stubs/memory_hotplug.c @@ -0,0 +1,6 @@ +#include "qemu/notify.h" +#include "sysemu/sysemu.h" + +void qemu_register_mem_added_notifier(Notifier *notifier) +{ +} -- 1.7.1