[libvirt] [PATCH v3 7/7] qemu: Translate the volume type disk source before cgroup setting

Osier Yang jyang at redhat.com
Mon Jul 22 11:09:35 UTC 2013


On 19/07/13 20:32, John Ferlan wrote:
> From: Osier Yang <jyang at redhat.com>
>
> The translation must be done before both of cgroup and security
> setting, otherwise since the disk source is not translated yet,
> it might be skipped on cgroup and security setting.
> ---
>   src/qemu/qemu_process.c | 13 ++++++++-----
>   1 file changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
> index ef81536..d7deb0f 100644
> --- a/src/qemu/qemu_process.c
> +++ b/src/qemu/qemu_process.c
> @@ -3627,6 +3627,14 @@ int qemuProcessStart(virConnectPtr conn,
>       }
>       hookData.nodemask = nodemask;
>   
> +    /* "volume" type disk's source must be translated before
> +     * cgroup and security setting.
> +     */
> +    for (i = 0; i < vm->def->ndisks; i++) {
> +        if (qemuTranslateDiskSourcePool(conn, vm->def->disks[i]) < 0)
> +            goto cleanup;
> +    }
> +
>       VIR_DEBUG("Setting up domain cgroup (if required)");
>       if (qemuSetupCgroup(driver, vm, nodemask) < 0)
>           goto cleanup;
> @@ -3671,11 +3679,6 @@ int qemuProcessStart(virConnectPtr conn,
>               goto cleanup;
>       }
>   
> -    for (i = 0; i < vm->def->ndisks; i++) {
> -        if (qemuTranslateDiskSourcePool(conn, vm->def->disks[i]) < 0)
> -            goto cleanup;
> -    }
> -
>       VIR_DEBUG("Building emulator command line");
>       if (!(cmd = qemuBuildCommandLine(conn, driver, vm->def, priv->monConfig,
>                                        priv->monJSON, priv->qemuCaps,
ack, a bit strange to ack my own patch though. may need to wait for a
second ack from others.





More information about the libvir-list mailing list