libxl__multidev_begin(ao, &dcs->aodevs);
dcs->aodevs.callback = domcreate_launch_dm;
- libxl__add_disks(egc, ao, domid, 0, d_config, &dcs->aodevs);
+ libxl__add_disks(egc, ao, domid, d_config, &dcs->aodevs);
libxl__multidev_prepared(egc, &dcs->aodevs, 0);
return;
/* Attach nics */
libxl__multidev_begin(ao, &dcs->aodevs);
dcs->aodevs.callback = domcreate_attach_pci;
- libxl__add_nics(egc, ao, domid, 0, d_config, &dcs->aodevs);
+ libxl__add_nics(egc, ao, domid, d_config, &dcs->aodevs);
libxl__multidev_prepared(egc, &dcs->aodevs, 0);
return;
}
#define DEFINE_DEVICES_ADD(type) \
void libxl__add_##type##s(libxl__egc *egc, libxl__ao *ao, uint32_t domid, \
- int start, libxl_domain_config *d_config, \
+ libxl_domain_config *d_config, \
libxl__ao_devices *aodevs) \
{ \
AO_GC; \
int i; \
- int end = start + d_config->num_##type##s; \
- for (i = start; i < end; i++) { \
+ for (i = 0; i < d_config->num_##type##s; i++) { \
libxl__ao_device *aodev = libxl__multidev_prepare(aodevs); \
- libxl__device_##type##_add(egc, domid, &d_config->type##s[i-start], \
+ libxl__device_##type##_add(egc, domid, &d_config->type##s[i], \
aodev); \
} \
}
libxl__multidev_begin(ao, &sdss->aodevs);
sdss->aodevs.callback = spawn_stub_launch_dm;
- libxl__add_disks(egc, ao, dm_domid, 0, dm_config, &sdss->aodevs);
+ libxl__add_disks(egc, ao, dm_domid, dm_config, &sdss->aodevs);
libxl__multidev_prepared(egc, &sdss->aodevs, 0);
free(args);
if (d_config->num_nics > 0) {
libxl__multidev_begin(ao, &sdss->aodevs);
sdss->aodevs.callback = stubdom_pvqemu_cb;
- libxl__add_nics(egc, ao, dm_domid, 0, d_config, &sdss->aodevs);
+ libxl__add_nics(egc, ao, dm_domid, d_config, &sdss->aodevs);
libxl__multidev_prepared(egc, &sdss->aodevs, 0);
return;
}
/* Helper function to add a bunch of disks. This should be used when
* the caller is inside an async op. "devices" will NOT be prepared by
* this function, so the caller must make sure to call
- * libxl__multidev_begin before calling this function. The start
- * parameter contains the position inside the aodevs array that should
- * be used to store the state of this devices.
+ * libxl__multidev_begin before calling this function.
*
* The "callback" will be called for each device, and the user is responsible
* for calling libxl__ao_device_check_last on the callback.
*/
_hidden void libxl__add_disks(libxl__egc *egc, libxl__ao *ao, uint32_t domid,
- int start, libxl_domain_config *d_config,
+ libxl_domain_config *d_config,
libxl__ao_devices *aodevs);
_hidden void libxl__add_nics(libxl__egc *egc, libxl__ao *ao, uint32_t domid,
- int start, libxl_domain_config *d_config,
+ libxl_domain_config *d_config,
libxl__ao_devices *aodevs);
/*----- device model creation -----*/