[libvirt] [PATCH v2 18/18] qemu.conf: Allow users to enable/disable label remembering

Daniel P. Berrangé berrange at redhat.com
Thu Dec 6 12:18:47 UTC 2018


On Thu, Nov 29, 2018 at 02:52:33PM +0100, Michal Privoznik wrote:
> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
> ---
>  src/qemu/libvirtd_qemu.aug         | 1 +
>  src/qemu/qemu.conf                 | 6 ++++++
>  src/qemu/qemu_conf.c               | 4 ++++
>  src/qemu/test_libvirtd_qemu.aug.in | 1 +
>  4 files changed, 12 insertions(+)
> 
> diff --git a/src/qemu/libvirtd_qemu.aug b/src/qemu/libvirtd_qemu.aug
> index ddc4bbfd1d..8a5b39e568 100644
> --- a/src/qemu/libvirtd_qemu.aug
> +++ b/src/qemu/libvirtd_qemu.aug
> @@ -71,6 +71,7 @@ module Libvirtd_qemu =
>                   | str_entry "user"
>                   | str_entry "group"
>                   | bool_entry "dynamic_ownership"
> +                 | bool_entry "remember_owner"
>                   | str_array_entry "cgroup_controllers"
>                   | str_array_entry "cgroup_device_acl"
>                   | int_entry "seccomp_sandbox"
> diff --git a/src/qemu/qemu.conf b/src/qemu/qemu.conf
> index 8391332cb4..31e8d8476b 100644
> --- a/src/qemu/qemu.conf
> +++ b/src/qemu/qemu.conf
> @@ -450,6 +450,12 @@
>  # Set to 0 to disable file ownership changes.
>  #dynamic_ownership = 1
>  
> +# Whether libvirt should remember and restore the original
> +# ownership over files it is relabeling. Be aware that with the
> +# current implementation this requires exclusive access to the
> +# files which might hurt performance a bit in some cases.

What do you mean by performance impact here ?  I think this is a bit
obscure to put as a comment, as users aren't given enough info to
decide if its a perf hit for them or not. I'd just leave out that
info.

> +# Defaults to 1, set to 0 to disable the feature.
> +#remember_owner = 1
>  
>  # What cgroup controllers to make use of with QEMU guests
>  #
> diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
> index a946b05d5d..89491a37b7 100644
> --- a/src/qemu/qemu_conf.c
> +++ b/src/qemu/qemu_conf.c
> @@ -147,6 +147,7 @@ virQEMUDriverConfigPtr virQEMUDriverConfigNew(bool privileged)
>          cfg->group = (gid_t)-1;
>      }
>      cfg->dynamicOwnership = privileged;
> +    cfg->rememberOwner = true;
>  
>      cfg->cgroupControllers = -1; /* -1 == auto-detect */
>  
> @@ -730,6 +731,9 @@ int virQEMUDriverConfigLoadFile(virQEMUDriverConfigPtr cfg,
>      if (virConfGetValueBool(conf, "dynamic_ownership", &cfg->dynamicOwnership) < 0)
>          goto cleanup;
>  
> +    if (virConfGetValueBool(conf, "remember_owner", &cfg->rememberOwner) < 0)
> +        goto cleanup;
> +
>      if (virConfGetValueStringList(conf,  "cgroup_controllers", false,
>                                    &controllers) < 0)
>          goto cleanup;
> diff --git a/src/qemu/test_libvirtd_qemu.aug.in b/src/qemu/test_libvirtd_qemu.aug.in
> index f1e8806ad2..92a8ae1192 100644
> --- a/src/qemu/test_libvirtd_qemu.aug.in
> +++ b/src/qemu/test_libvirtd_qemu.aug.in
> @@ -43,6 +43,7 @@ module Test_libvirtd_qemu =
>  { "user" = "root" }
>  { "group" = "root" }
>  { "dynamic_ownership" = "1" }
> +{ "remember_owner" = "1" }
>  { "cgroup_controllers"
>      { "1" = "cpu" }
>      { "2" = "devices" }
> -- 
> 2.18.1
> 
> --
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list