Lines Matching defs:dinfo

29     DriveInfo *dinfo = drive_get_by_blockdev(bs);
31 dinfo->auto_del = 1;
36 DriveInfo *dinfo = drive_get_by_blockdev(bs);
38 if (dinfo->auto_del) {
39 drive_uninit(dinfo);
64 DriveInfo *dinfo;
68 QTAILQ_FOREACH(dinfo, &drives, next) {
69 if (dinfo->type == type &&
70 dinfo->bus == bus &&
71 dinfo->unit == unit)
72 return dinfo;
81 DriveInfo *dinfo;
84 QTAILQ_FOREACH(dinfo, &drives, next) {
85 if(dinfo->type == type &&
86 dinfo->bus > max_bus)
87 max_bus = dinfo->bus;
94 DriveInfo *dinfo;
96 QTAILQ_FOREACH(dinfo, &drives, next) {
97 if (dinfo->bdrv == bs) {
98 return dinfo;
109 void drive_uninit(DriveInfo *dinfo)
111 qemu_opts_del(dinfo->opts);
112 bdrv_delete(dinfo->bdrv);
113 QTAILQ_REMOVE(&drives, dinfo, next);
114 g_free(dinfo);
152 DriveInfo *dinfo;
399 dinfo = g_malloc0(sizeof(*dinfo));
401 dinfo->id = g_strdup(buf);
404 dinfo->id = g_malloc0(32);
408 snprintf(dinfo->id, 32, "%s%i%s%i",
411 snprintf(dinfo->id, 32, "%s%s%i",
414 dinfo->bdrv = bdrv_new(dinfo->id);
415 dinfo->devaddr = devaddr;
416 dinfo->type = type;
417 dinfo->bus = bus_id;
418 dinfo->unit = unit_id;
419 dinfo->opts = opts;
421 strncpy(dinfo->serial, serial, sizeof(dinfo->serial) - 1);
422 QTAILQ_INSERT_TAIL(&drives, dinfo, next);
424 bdrv_set_on_error(dinfo->bdrv, on_read_error, on_write_error);
434 bdrv_set_geometry_hint(dinfo->bdrv, cyls, heads, secs);
435 bdrv_set_translation_hint(dinfo->bdrv, translation);
439 bdrv_set_type_hint(dinfo->bdrv, BDRV_TYPE_CDROM);
447 bdrv_set_type_hint(dinfo->bdrv, BDRV_TYPE_FLOPPY);
456 qemu_opt_set(opts, "drive", dinfo->id);
485 ret = bdrv_open(dinfo->bdrv, file, bdrv_flags, drv);
492 if (bdrv_key_required(dinfo->bdrv))
495 return dinfo;