for (i = 0; i < def->nfss; i++) {
virDomainFSDef *fs = def->fss[i];
- if (fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS && !fs->sock) {
+ if (fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS) {
if (qemuVirtioFSStart(driver, vm, fs) < 0)
return -1;
}
for (i = 0; i < def->nfss; i++) {
virDomainFSDef *fs = def->fss[i];
- if (!fs->sock &&
- fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS)
+ if (fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS)
qemuVirtioFSStop(driver, vm, fs);
}
for (i = 0; i < def->nfss; i++) {
virDomainFSDef *fs = def->fss[i];
- if (!fs->sock &&
- fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS &&
+ if (fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS &&
qemuVirtioFSSetupCgroup(vm, fs, cgroup) < 0)
return -1;
}
virErrorPtr origErr = NULL;
bool releaseaddr = false;
bool chardevAdded = false;
- bool started = false;
+ bool startCalled = false;
g_autofree char *charAlias = NULL;
int ret = -1;
if (!(devprops = qemuBuildVHostUserFsDevProps(fs, vm->def, charAlias, priv)))
goto cleanup;
- if (!fs->sock) {
- if (qemuVirtioFSPrepareDomain(driver, fs) < 0)
- goto cleanup;
+ if (qemuVirtioFSPrepareDomain(driver, fs) < 0)
+ goto cleanup;
- if (qemuVirtioFSStart(driver, vm, fs) < 0)
- goto cleanup;
- started = true;
+ if (qemuVirtioFSStart(driver, vm, fs) < 0)
+ goto cleanup;
+ startCalled = true;
- if (qemuVirtioFSSetupCgroup(vm, fs, priv->cgroup) < 0)
- goto cleanup;
- }
+ if (qemuVirtioFSSetupCgroup(vm, fs, priv->cgroup) < 0)
+ goto cleanup;
qemuDomainObjEnterMonitor(vm);
virErrorPreserveLast(&origErr);
if (releaseaddr)
qemuDomainReleaseDeviceAddress(vm, &fs->info);
- if (started)
+ if (startCalled)
qemuVirtioFSStop(driver, vm, fs);
virErrorRestore(&origErr);
}
if (rc < 0)
return -1;
- if (!fs->sock && fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS)
+ if (fs->fsdriver == VIR_DOMAIN_FS_DRIVER_TYPE_VIRTIOFS)
qemuVirtioFSStop(driver, vm, fs);
if ((idx = virDomainFSDefFind(vm->def, fs)) >= 0)
g_autoptr(domainLogContext) logContext = NULL;
int rc;
+ if (fs->sock)
+ return 0;
+
if (!virFileIsExecutable(fs->binary)) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("virtiofsd binary '%1$s' is not executable"),
g_autofree char *pidfile = NULL;
virErrorPtr orig_err;
+ if (fs->sock)
+ return;
+
virErrorPreserveLast(&orig_err);
if (!(pidfile = qemuVirtioFSCreatePidFilename(vm, fs->info.alias)))
pid_t pid = -1;
int rc;
+ if (fs->sock)
+ return 0;
+
if (!cgroup)
return 0;