libvirt/src/util
Daniel P. Berrangé fa56310e18 util: tell users that memory locking ulimit is too low for BPF
If running libvirtd via systemd, it gets a 64 MB memlock limit, but if
running from the shell it will only get 64 KB on a Fedora 33 system.
The latter low limit causes any attempt to use BPF to fail and it is
not obvious why.

This improves the error message thus:

  # virsh -c lxc:/// start sh
error: Failed to start domain 'sh'
error: internal error: guest failed to start: Failure in libvirt_lxc startup: failed to initialize device BPF map; locked memory limit for libvirtd probably needs to be raised: Operation not permitted

Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-03-17 09:16:44 +00:00
..
glibcompat.c src: ensure GSource background unref happens in correct event loop 2021-03-17 09:16:05 +00:00
glibcompat.h src: ensure GSource background unref happens in correct event loop 2021-03-17 09:16:05 +00:00
iohelper.c util: iohelper: Don't handle OOM from posix_memalign 2021-03-02 09:50:19 +01:00
meson.build meson: tools: depend on keycode generated sources 2021-03-05 20:05:54 +04:00
viralloc.c viralloc: Remove VIR_ALLOC_VAR 2021-02-03 16:09:25 +01:00
viralloc.h viralloc: Remove VIR_ALLOC_VAR 2021-02-03 16:09:25 +01:00
virarch.c util: add a virArchFromHost() impl for Windows 2020-01-29 14:51:39 +00:00
virarch.h util: add ARCH_IS_MIPS64 helper macro 2020-11-20 12:09:51 +00:00
virarptable.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virarptable.h
viraudit.c Use g_strerror instead of virStrerror 2020-03-13 17:26:55 +01:00
viraudit.h Use G_GNUC_PRINTF instead of ATTRIBUTE_FMT_PRINTF 2019-10-15 16:14:18 +02:00
virauth.c util: Fix memory leak in virAuthGetCredential 2020-06-16 15:01:05 +02:00
virauth.h
virauthconfig.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virauthconfig.h util: Fix memory leak in virAuthGetCredential 2020-06-16 15:01:05 +02:00
virbitmap.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virbitmap.h util: virbitmap: Remove virBitmapCopy 2020-10-05 15:50:45 +02:00
virbpf.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virbpf.h lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virbuffer.c virBufferAdd: Ensure that the buffer is initialized also when len == 0 2021-03-05 15:33:34 +01:00
virbuffer.h src: fix word spell typos 2020-07-09 10:01:41 +02:00
vircgroup.c vircgroup: drop unused function virCgroupSetupCpuShares 2021-03-04 11:13:31 +01:00
vircgroup.h vircgroup: drop unused function virCgroupSetupCpuShares 2021-03-04 11:13:31 +01:00
vircgroupbackend.c
vircgroupbackend.h vircgroup: introduce virCgroupV1Exists and virCgroupV2Exists 2021-02-10 13:37:12 +01:00
vircgrouppriv.h vircgroup: introduce nested cgroup to properly work with systemd 2021-02-10 13:37:12 +01:00
vircgroupv1.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
vircgroupv1.h
vircgroupv2.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
vircgroupv2.h
vircgroupv2devices.c util: tell users that memory locking ulimit is too low for BPF 2021-03-17 09:16:44 +00:00
vircgroupv2devices.h vircgroupv2devices: Unexport virCgroupV2DevicesAttachProg() 2020-01-06 17:30:17 +01:00
vircommand.c util: Have virCommand remember whether limits are set 2021-03-08 22:41:40 +01:00
vircommand.h virCommandSetSendBuffer: Provide saner semantics 2021-03-05 15:33:34 +01:00
vircommandpriv.h
virconf.c lib: Put some variable declarations on individual lines 2021-03-15 09:38:18 +01:00
virconf.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
vircrypto.c virCryptoEncryptDataAESgnutls: Use virSecureErase instead of memset 2021-02-03 13:07:13 +01:00
vircrypto.h Use G_GNUC_WARN_UNUSED_RESULT instead of ATTRIBUTE_RETURN_CHECK 2019-10-15 11:25:22 +02:00
virdaemon.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
virdaemon.h util: introduce shared daemon startup code 2020-03-27 16:22:49 +01:00
virdevmapper.c virDevMapperGetTargetsImpl: Use correct length when copying into dm.name 2021-03-08 12:16:13 +01:00
virdevmapper.h util: Move virIsDevMapperDevice() to virdevmapper.c 2020-06-15 14:50:46 +02:00
virdnsmasq.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
virdnsmasq.h util: define g_autoptr cleanups for a couple dnsmasq objects 2020-07-20 19:08:07 -04:00
virebtables.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virebtables.h
virendian.h
virenum.c
virenum.h src: replace verify(expr) with G_STATIC_ASSERT(expr) 2020-01-17 10:02:01 +00:00
virerror.c util: virerror: Avoid a copy of the error messages 2021-03-05 15:01:29 +01:00
virerror.h util: virerror: Remove VIR_ERROR_MAX_LENGTH macro 2021-03-05 15:01:29 +01:00
virerrorpriv.h
virevent.c util: event: check return value of virInitialize 2020-09-23 13:26:34 +02:00
virevent.h event: add API for requiring an event loop impl to be registered 2019-12-18 14:04:59 +00:00
vireventglib.c src: ensure GSource background unref happens in correct event loop 2021-03-17 09:16:05 +00:00
vireventglib.h util: import an event loop impl based on GMainContext 2020-02-07 15:03:53 +00:00
vireventglibwatch.c util: keep track of full GSource object not source ID number 2020-08-07 12:43:56 +01:00
vireventglibwatch.h util: keep track of full GSource object not source ID number 2020-08-07 12:43:56 +01:00
vireventthread.c util: do not unref event thread after joining it 2020-09-23 17:06:36 +02:00
vireventthread.h src: introduce an abstraction for running event loops 2020-03-11 14:44:04 +00:00
virfcp.c virBuildPath: Remove return value 2021-03-02 09:50:19 +01:00
virfcp.h
virfdstream.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virfdstream.h
virfile.c virFileLoopDeviceAssociate: Use virStrcpy instead of virStrncpy 2021-03-05 15:01:29 +01:00
virfile.h util: Drop virFileMakePath() and virFileMakePathWithMode() 2021-03-04 20:52:23 +01:00
virfilecache.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
virfilecache.h qemu: don't continue loading caps if outdated 2020-06-23 17:33:30 +01:00
virfirewall.c virFirewallApply: Fix possible NULL dereference on error 2021-03-05 15:33:34 +01:00
virfirewall.h util: synchronize with firewalld before we start calling iptables directly 2020-11-24 14:21:58 -05:00
virfirewalld.c util: firewall: use g_new0 2020-10-06 12:31:34 +02:00
virfirewalld.h
virfirewalldpriv.h
virfirewallpriv.h
virfirmware.c Replace virStringSplit with g_strsplit 2021-02-11 17:05:34 +01:00
virfirmware.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC instead of VIR_DEFINE_AUTOPTR_FUNC 2019-10-16 12:06:43 +02:00
virgdbus.c virgdbus: fix getting non-shared DBus connection 2020-11-09 23:42:33 +01:00
virgdbus.h virgdbus: add DBus reply format check 2020-09-23 12:53:31 +02:00
virgettext.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virgettext.h
virgic.c Remove virutil.h where possible 2020-02-24 23:15:49 +01:00
virgic.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virglibutil.c util: Add helpers for auto-freeing GSList filled with strings 2021-02-11 17:05:32 +01:00
virglibutil.h util: Add helpers for auto-freeing GSList filled with strings 2021-02-11 17:05:32 +01:00
virhash.c util: hash: Add deprecation notices for functions which have g_hash_table replacements 2020-11-06 10:40:56 +01:00
virhash.h util: hash: Retire 'virHashTable' in favor of 'GHashTable' 2020-11-06 10:40:51 +01:00
virhashcode.c Prefer https: everywhere where possible 2020-09-01 21:58:46 +02:00
virhashcode.h Prefer https: everywhere where possible 2020-09-01 21:58:46 +02:00
virhook.c virBuildPath: Remove return value 2021-03-02 09:50:19 +01:00
virhook.h bhyve: add hooks 2020-02-24 17:25:07 +00:00
virhostcpu.c virHostCPUGetStatsLinux: Avoid 'strcpy' 2021-03-05 15:33:34 +01:00
virhostcpu.h domaincapsmock: mock virHostCPUGetMicrocodeVersion() 2020-08-25 19:44:43 +02:00
virhostcpupriv.h hostcpu: Introduce virHostCPUGetSignature 2020-05-25 16:09:41 +02:00
virhostmem.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virhostmem.h
virhostuptime.c virhostuptime: Fix rounding in uptime calculation 2021-02-02 15:00:55 +01:00
virhostuptime.h virhostuptime: Introduce virHostBootTimeInit() 2020-01-07 17:00:10 +01:00
viridentity.c Substitute security_context_t with char * 2020-07-15 14:31:07 +02:00
viridentity.h util: convert virIdentity class to use GObject 2019-10-14 10:54:42 +01:00
virinitctl.c src: replace verify(expr) with G_STATIC_ASSERT(expr) 2020-01-17 10:02:01 +00:00
virinitctl.h
viriptables.c util: synchronize with firewalld before we start calling iptables directly 2020-11-24 14:21:58 -05:00
viriptables.h network: allow DHCP/DNS/TFTP explicitly in OUTPUT rules 2019-10-18 18:49:54 +01:00
viriscsi.c Remove all the uses that use subtraction in their length argument 2019-12-12 14:24:35 +01:00
viriscsi.h Use G_GNUC_WARN_UNUSED_RESULT instead of ATTRIBUTE_RETURN_CHECK 2019-10-15 11:25:22 +02:00
virjson.c util: json: Report non-OOM error on yajl failure 2021-03-02 09:50:20 +01:00
virjson.h virJSONValueArrayAppend: Clear pointer when taking ownership of passed value 2021-02-20 13:26:37 +01:00
virkeycode.c Split declarations from initializations 2020-08-25 19:03:11 +02:00
virkeycode.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virkmod.c util: rename method to virKModIsProhibited 2020-06-26 15:39:33 +01:00
virkmod.h util: rename method to virKModIsProhibited 2020-06-26 15:39:33 +01:00
virlease.c virJSONValueArrayAppend: Clear pointer when taking ownership of passed value 2021-02-20 13:26:37 +01:00
virlease.h
virlockspace.c virLockSpaceNewPostExecRestart: Fix out-of-bounds array access 2021-03-12 11:02:35 +01:00
virlockspace.h
virlog.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
virlog.h util: virlog: unexport virLogVMessage 2020-08-03 15:30:40 +02:00
virmacaddr.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virmacaddr.h src: replace verify(expr) with G_STATIC_ASSERT(expr) 2020-01-17 10:02:01 +00:00
virmacmap.c virJSONValueArrayAppend: Clear pointer when taking ownership of passed value 2021-02-20 13:26:37 +01:00
virmacmap.h util: macmap: Convert to use GSList for storing macs instead of string lists 2021-02-11 17:05:33 +01:00
virmdev.c Use g_steal_pointer where possible 2021-03-01 15:54:42 +01:00
virmdev.h hostdev: mdev: Lookup mdevs by sysfs path rather than mdev struct 2021-01-08 08:10:02 +01:00
virmodule.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virmodule.h
virnetdev.c util: virnetlink: Add wrapper for 'nlmsg_alloc_simple' 2021-03-02 09:50:19 +01:00
virnetdev.h util: add virNetDevGetPhysPortName 2021-01-25 20:27:38 -05:00
virnetdevbandwidth.c lib: Put some variable declarations on individual lines 2021-03-15 09:38:18 +01:00
virnetdevbandwidth.h lib: Put some variable declarations on individual lines 2021-03-15 09:38:18 +01:00
virnetdevbridge.c util: virnetlink: Add wrapper for 'nlmsg_alloc_simple' 2021-03-02 09:50:19 +01:00
virnetdevbridge.h util: query/set BR_ISOLATED flag on netdevs attached to bridge 2020-02-20 23:07:53 -05:00
virnetdevip.c util: virnetlink: Add wrapper for 'nlmsg_alloc_simple' 2021-03-02 09:50:19 +01:00
virnetdevip.h util: remove unused virNetDevIPWaitDadFinish() 2020-09-10 11:47:35 -04:00
virnetdevmacvlan.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virnetdevmacvlan.h netdevmacvlan: Use helper function to create unique macvlan/macvtap name 2020-12-15 13:35:33 -05:00
virnetdevmidonet.c src: util: rename some program macros 2020-07-10 09:40:45 +02:00
virnetdevmidonet.h conf: return a const from virDomainNetGetActualVirtPortProfile 2019-11-25 15:29:56 -05:00
virnetdevopenvswitch.c util: Remove '\n' from vhostuser ifname 2021-02-05 09:57:14 +01:00
virnetdevopenvswitch.h virnetdevopenvswitch: Try to unescape ovs-vsctl reply in one specific case 2020-12-17 09:27:51 +01:00
virnetdevtap.c util: minor comment/formatting changes to virNetDevTapCreate() 2020-12-16 21:32:07 -05:00
virnetdevtap.h netdevtap: Use common helper function to create unique tap name 2020-12-15 13:35:27 -05:00
virnetdevveth.c util:veth: Create veth device pair by netlink 2020-12-16 14:43:18 -05:00
virnetdevveth.h Use G_GNUC_WARN_UNUSED_RESULT instead of ATTRIBUTE_RETURN_CHECK 2019-10-15 11:25:22 +02:00
virnetdevvlan.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virnetdevvlan.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virnetdevvportprofile.c util: virnetlink: Add wrapper for 'nlmsg_alloc_simple' 2021-03-02 09:50:19 +01:00
virnetdevvportprofile.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virnetlink.c util: Fix error reporting in virnetlink 2021-03-09 13:33:09 +01:00
virnetlink.h util: virnetlink: Add wrapper for 'nlmsg_alloc_simple' 2021-03-02 09:50:19 +01:00
virnodesuspend.c src: improve thread naming with human targetted names 2020-03-05 12:23:04 +00:00
virnodesuspend.h
virnuma.c remove unnecessary cleanup labels and unused return variables 2020-11-02 22:01:36 -05:00
virnuma.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virnvme.c util: replace VIR_FREE with g_free in all *Dispose() functions 2021-02-05 00:22:09 -05:00
virnvme.h virhostdev: Include virNVMeDevice module 2019-12-17 10:04:43 +01:00
virobject.c util: convert VIR_FREE to g_free in other functions that free their arg 2021-02-12 12:10:38 -05:00
virobject.h src: make virObject inherit from GObject 2020-06-03 10:20:17 +01:00
virpci.c virBuildPath: Remove return value 2021-03-02 09:50:19 +01:00
virpci.h virpci.c: use virPCIDeviceAddressPtr in virPCIDeviceListDel() 2021-03-01 12:25:33 -03:00
virperf.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virperf.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virpidfile.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
virpidfile.h Use G_GNUC_WARN_UNUSED_RESULT instead of ATTRIBUTE_RETURN_CHECK 2019-10-15 11:25:22 +02:00
virpolkit.c virPolkitCheckAuth: Avoid virStringListLength in loop condition 2021-02-11 17:05:34 +01:00
virpolkit.h
virportallocator.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virportallocator.h
virprobe.h
virprocess.c util: Don't special-case setting a limit to zero 2021-03-08 22:41:40 +01:00
virprocess.h tests: Mock virProcessGetMaxMemLock() 2021-03-08 22:41:40 +01:00
virqemu.c qemu: remove support for generating yes|no boolean options 2021-02-16 14:03:13 +00:00
virqemu.h qemu: remove support for generating yes|no boolean options 2021-02-16 14:03:13 +00:00
virrandom.c internal.h: Introduce and use VIR_IS_POW2() 2020-12-04 16:24:19 +01:00
virrandom.h Use G_GNUC_NO_INLINE instead of ATTRIBUTE_NOINLINE 2019-10-15 16:14:18 +02:00
virresctrl.c lib: Replace virFileMakePath() with g_mkdir_with_parents() 2021-03-04 20:52:23 +01:00
virresctrl.h util: sync variable names between header and C files 2020-08-03 15:19:29 +02:00
virresctrlpriv.h
virrotatingfile.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virrotatingfile.h
virscsi.c Remove useless comments for VIR_FROM_THIS definition 2021-03-02 09:50:19 +01:00
virscsi.h Remove virautoclean.h 2019-10-16 12:06:44 +02:00
virscsihost.c util: quieten virSCSIHostGetUniqueId 2020-11-06 15:03:39 +01:00
virscsihost.h
virscsivhost.c Remove useless comments for VIR_FROM_THIS definition 2021-03-02 09:50:19 +01:00
virscsivhost.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
virseclabel.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virseclabel.h
virsecret.c virSecretLookupParseSecret: Use g_steal_pointer 2021-01-08 09:18:21 +01:00
virsecret.h virSecretLookupDefCopy: Remove return value 2020-03-20 09:47:16 +01:00
virsecureerase.c util: virsecureerase: Introduce virSecureEraseString 2021-02-03 13:07:13 +01:00
virsecureerase.h util: virsecureerase: Introduce virSecureEraseString 2021-02-03 13:07:13 +01:00
virsocket.c util: Fix file descriptor passing on 64-bit FreeBSD and NetBSD. 2021-02-17 10:15:33 +00:00
virsocket.h gnulib: delete all gnulib integration 2020-02-07 15:03:54 +00:00
virsocketaddr.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virsocketaddr.h util: sync variable names between header and C files 2020-08-03 15:19:29 +02:00
virstoragefile.c util: Remove unused 'virStorageFileParseChainIndex' 2021-01-27 07:49:58 +01:00
virstoragefile.h util: Remove unused 'virStorageFileParseChainIndex' 2021-01-27 07:49:58 +01:00
virstring.c util: virstring: Remove virStrncpy 2021-03-12 10:57:42 +01:00
virstring.h util: virstring: Remove virStrncpy 2021-03-12 10:57:42 +01:00
virsysinfo.c virsysinfo: Define and use auto cleanup func for virSysinfoDef properly 2021-03-15 09:34:18 +01:00
virsysinfo.h virsysinfo: Define and use auto cleanup func for virSysinfoDef properly 2021-03-15 09:34:18 +01:00
virsysinfopriv.h virsysinfo: Drop global @sysinfoDmidecode 2020-06-10 14:00:38 +02:00
virsystemd.c virSystemdCreateMachine: Use proper format string for uint64_t when constructing gvariant 2021-03-12 10:59:05 +01:00
virsystemd.h virsystemd: introduce virSystemdGetMachineUnitByPID 2021-02-10 13:37:11 +01:00
virsystemdpriv.h
virthread.c util: Use glib memory functions in virThreadCreateFull 2020-09-11 18:19:58 +02:00
virthread.h src: set the OS level thread name 2020-03-05 12:23:02 +00:00
virthreadjob.c
virthreadjob.h
virthreadpool.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virthreadpool.h util: remove unused virThreadPoolNew macro 2020-09-07 09:34:00 +03:00
virtime.c util: o-z: use g_new0 2020-10-06 12:31:34 +02:00
virtime.h Use G_GNUC_WARN_UNUSED_RESULT instead of ATTRIBUTE_RETURN_CHECK 2019-10-15 11:25:22 +02:00
virtpm.c virtpm: Fix @path handling in virTPMEmulatorInit() 2021-03-02 09:49:23 +01:00
virtpm.h Use G_GNUC_NO_INLINE instead of ATTRIBUTE_NOINLINE 2019-10-15 16:14:18 +02:00
virtypedparam-public.c util: replace VIR_FREE with g_free in all vir*Free() functions 2021-02-05 00:20:43 -05:00
virtypedparam.c Use g_steal_pointer where possible 2021-03-01 15:54:42 +01:00
virtypedparam.h Remove virutil.h from all header files 2020-02-24 23:15:50 +01:00
viruri.c virURIFormat: abort() on failure 2021-03-02 09:50:19 +01:00
viruri.h peer2peer migration: allow connecting to local sockets 2020-09-04 10:20:49 +02:00
virusb.c util: replace VIR_FREE with g_free in all *Dispose() functions 2021-02-05 00:22:09 -05:00
virusb.h Remove virautoclean.h 2019-10-16 12:06:44 +02:00
virutil.c virutil: Do not use g_get_host_name() to obtain hostname 2021-03-12 08:45:04 +01:00
virutil.h virIndexToDiskName: Make 'idx' unsigned and remove check 2021-03-05 15:33:34 +01:00
viruuid.c viruuid: Rework virUUIDIsValid() 2020-12-04 16:24:19 +01:00
viruuid.h viruuid: Rework virUUIDIsValid() 2020-12-04 16:24:19 +01:00
virvhba.c remove unnecessary cleanup labels and unused return variables 2020-11-02 22:01:36 -05:00
virvhba.h
virvsock.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virvsock.h
virxdrdefs.h src: remove all traces of Cygwin support 2020-01-29 14:51:40 +00:00
virxml.c virXMLParseHelper: abort() on allocation failure 2021-03-02 09:50:19 +01:00
virxml.h util: xml: Add wrapper for 'xmlNewNode' 2021-03-02 09:50:19 +01:00