qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

nvdimm-utils.c (697B)


      1 #include "qemu/osdep.h"
      2 #include "qemu/nvdimm-utils.h"
      3 #include "hw/mem/nvdimm.h"
      4 
      5 static int nvdimm_device_list(Object *obj, void *opaque)
      6 {
      7     GSList **list = opaque;
      8 
      9     if (object_dynamic_cast(obj, TYPE_NVDIMM)) {
     10         *list = g_slist_append(*list, DEVICE(obj));
     11     }
     12 
     13     object_child_foreach(obj, nvdimm_device_list, opaque);
     14     return 0;
     15 }
     16 
     17 /*
     18  * inquire NVDIMM devices and link them into the list which is
     19  * returned to the caller.
     20  *
     21  * Note: it is the caller's responsibility to free the list to avoid
     22  * memory leak.
     23  */
     24 GSList *nvdimm_get_device_list(void)
     25 {
     26     GSList *list = NULL;
     27 
     28     object_child_foreach(qdev_get_machine(), nvdimm_device_list, &list);
     29     return list;
     30 }