libvirt/tools
Pavel Hrdina 126cb34a20 virt-host-validate: fix detection with cgroups v2
Using virtCgroupNewSelf() is not correct with cgroups v2 because the
the virt-host-validate process is executed from from the same cgroup
context as the terminal and usually not all controllers are enabled
by default.

To do a proper check we need to use the root cgroup to see what
controllers are actually available. Libvirt or systemd ensures that
all controllers are available for VMs as well.

This still doesn't solve the devices controller with cgroups v2 where
there is no controller as it was replaced by eBPF. Currently libvirt
tries to query eBPF programs which usually works only for root as
regular users will get permission denied for that operation.

Fixes: https://gitlab.com/libvirt/libvirt/-/issues/94

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2020-11-19 01:18:35 +01:00
..
bash-completion vsh: Fix completion error in case of multiple mac addresses 2020-11-10 18:34:18 +01:00
nss lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
wireshark wireshark: Fix missing bool_t on macOS 2020-10-07 19:17:53 +02:00
libvirt_recover_xattrs.sh security_util: Remove stale XATTRs 2019-08-22 17:05:17 +02:00
libvirt_win_icon_16x16.ico
libvirt_win_icon_32x32.ico
libvirt_win_icon_48x48.ico
libvirt_win_icon_64x64.ico
libvirt-guests.service.in build: don't hardcode /etc in the config related files 2019-08-09 14:06:31 +01:00
libvirt-guests.sh.in libvirt-guests: Sync time for autostarted guests 2020-11-04 12:18:05 +01:00
libvirt-guests.sysconf systemd: Tweak existing sysconf files 2020-04-03 11:50:35 +02:00
meson.build meson: Use @BASENAME@ more 2020-09-01 13:22:24 +02:00
virsh_win_icon.rc
virsh-backup.c virsh: limit completion of backup-{begin, dumpxml} to active domains 2020-09-14 15:52:40 +02:00
virsh-backup.h backup: Implement virsh support for backup 2019-12-10 12:41:56 +01:00
virsh-checkpoint.c Fix name prefix of VIR_DOMAIN_CHECKPOINT_REDEFINE_VALIDATE 2020-11-09 16:29:06 +00:00
virsh-checkpoint.h backup: Implement virsh support for checkpoints 2019-07-26 16:48:58 -05:00
virsh-completer-checkpoint.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-checkpoint.h tools: Separate checkpoint related completers into a file 2019-08-09 09:18:19 +02:00
virsh-completer-domain.c Add lifecycle action completion to set-lifecycle-action command 2020-11-10 18:34:33 +01:00
virsh-completer-domain.h Add lifecycle action completion to set-lifecycle-action command 2020-11-10 18:34:33 +01:00
virsh-completer-host.c virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-completer-host.h virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-completer-interface.c virsh: Add interface mac completion to iface-name command 2020-11-10 18:34:11 +01:00
virsh-completer-interface.h virsh: Add interface mac completion to iface-name command 2020-11-10 18:34:11 +01:00
virsh-completer-network.c virsh: Add mac completion to net-dhcp-leases command 2020-11-10 18:34:23 +01:00
virsh-completer-network.h virsh: Add mac completion to net-dhcp-leases command 2020-11-10 18:34:23 +01:00
virsh-completer-nodedev.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-nodedev.h tools: Separate nodedev related completers into a file 2019-08-09 09:10:08 +02:00
virsh-completer-nwfilter.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-nwfilter.h tools: Separate nwfilter related completers into a file 2019-08-09 09:15:36 +02:00
virsh-completer-pool.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-pool.h virsh: Introduce virshPoolTypeCompleter 2019-08-09 09:20:13 +02:00
virsh-completer-secret.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-secret.h tools: Separate secret related completers into a file 2019-08-09 09:16:28 +02:00
virsh-completer-snapshot.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-snapshot.h tools: Separate snapshot related completers into a file 2019-08-09 09:17:06 +02:00
virsh-completer-volume.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-volume.h tools: Separate storage volume related completers into a file 2019-08-09 09:07:02 +02:00
virsh-completer.c tools: fix misc spelling errors reported by codespell 2020-10-05 10:28:45 +01:00
virsh-completer.h virsh-completer: Drop needless #include 2019-08-09 09:18:54 +02:00
virsh-console.c use g_ascii_toupper instead of c_toupper from gnulib 2019-12-10 13:49:24 +01:00
virsh-console.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-domain-monitor.c virsh: Allow listing just domain IDs 2020-11-09 11:28:23 +01:00
virsh-domain-monitor.h virsh: Fix virshDomainInterfaceSourceCompleter 2020-01-07 16:12:55 +01:00
virsh-domain.c virsh: Expose OpenSSH authorized key file mgmt APIs 2020-11-18 16:18:25 +01:00
virsh-domain.h virsh: Move/add some of function declarations to virsh-domain.h 2020-11-10 18:34:26 +01:00
virsh-edit.c Use G_GNUC_FALLTHROUGH instead of ATTRIBUTE_FALLTHROUGH 2019-10-15 16:14:19 +02:00
virsh-host.c virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-host.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virsh-interface.c virsh: Add interface name completion to iface-mac command 2020-11-10 18:34:16 +01:00
virsh-interface.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-network.c virsh: Add mac completion to net-dhcp-leases command 2020-11-10 18:34:23 +01:00
virsh-network.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-nodedev.c Include vdpa devices in node device list 2020-10-26 02:39:29 -04:00
virsh-nodedev.h tools: s/Nodedev/NodeDevice/ 2019-08-09 09:03:53 +02:00
virsh-nwfilter.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-nwfilter.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-pool.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-pool.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-secret.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-secret.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virsh-snapshot.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-snapshot.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virsh-util.c virsh: virshStreamSourceSkip: remove unused 'off' 2020-09-24 11:19:06 +02:00
virsh-util.h virsh: Track if vol-upload or vol-download work over a block device 2020-08-24 13:32:53 +02:00
virsh-volume.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-volume.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh.c tools: virsh: Reset error when keepalive registration fails 2020-11-13 11:12:30 +01:00
virsh.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virt-admin-completer.c tools: use g_new0 instead of VIR_ALLOC* 2020-10-01 12:34:13 +02:00
virt-admin-completer.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-admin.c vsh: Introduce wrapper for add_history() 2020-09-03 16:25:43 +02:00
virt-admin.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-bhyve.c virt-host-validate-bhyve.c: Reintroduce @ret to virHostValidateBhyve() 2020-05-05 14:45:58 +02:00
virt-host-validate-bhyve.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-common.c virt-host-validate: fix detection with cgroups v2 2020-11-19 01:18:35 +01:00
virt-host-validate-common.h tools: Secure guest check for AMD in virt-host-validate 2020-06-16 09:43:44 +02:00
virt-host-validate-lxc.c virt-host-validate: require freezer for LXC 2018-10-05 15:53:29 +02:00
virt-host-validate-lxc.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-qemu.c tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virt-host-validate-qemu.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virt-login-shell-helper.c Fix incorrect g_new0 conversions 2020-10-06 14:26:43 +02:00
virt-login-shell.c build: generate configmake.h in root directory 2020-01-29 14:51:39 +00:00
virt-login-shell.conf virt-login-shell: add ability to auto-detect shell from container 2016-06-10 11:03:02 +01:00
virt-pki-validate.in tools: Fix permissions for virt-pki-validate.in 2019-07-01 17:20:32 +02:00
virt-sanlock-cleanup.in build: Extract pod from source files 2016-04-25 15:40:43 +02:00
virt-xml-validate.in tools: fix XML validator detection of network port XML schema 2019-09-12 16:06:57 +01:00
vsh-table.c tools: use g_new0 instead of VIR_ALLOC* 2020-10-01 12:34:13 +02:00
vsh-table.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
vsh.c tools: vshCmddefOptParse: Remove return value 2020-11-13 11:12:30 +01:00
vsh.h tools: vsh: Unexport vshCmddefHelp 2020-11-13 11:12:29 +01:00