Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#79317 - [libvirt] libvirtd.service does not start without [dmidecode] dependency

Attached to Project: Arch Linux
Opened by Josh L (joshlangley) - Monday, 07 August 2023, 01:38 GMT
Last edited by Toolybird (Toolybird) - Monday, 07 August 2023, 02:38 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
Fresh installs of libvirtd (particularly with qemu, but I suspect that is unrelated) throw an error when enabling the libvirtd service. This error is solved by installing the dmidecode package and restarting the libvirtd service. It seems dmidecode is required for libvirtd not to crash.

Additional info:
* Related forum post: https://bbs.archlinux.org/viewtopic.php?pid=2114006#p2114006
* Output of `sudo systemctl status libvirtd.service` (Hostname redacted with $HOST):
```○ libvirtd.service - Virtualization daemon
Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; preset: disabled)
Active: inactive (dead) since Sun 2023-08-06 18:33:56 MDT; 11s ago
Duration: 2min 8ms
TriggeredBy: ● libvirtd-admin.socket
● libvirtd-ro.socket
● libvirtd.socket
Docs: man:libvirtd(8)
https://libvirt.org
Process: 41122 ExecStart=/usr/bin/libvirtd $LIBVIRTD_ARGS (code=exited, status=0/SUCCESS)
Main PID: 41122 (code=exited, status=0/SUCCESS)
CPU: 190ms

Aug 06 18:31:56 $HOST systemd[1]: Starting Virtualization daemon...
Aug 06 18:31:56 $HOST systemd[1]: Started Virtualization daemon.
Aug 06 18:31:56 $HOST libvirtd[41122]: libvirt version: 9.6.0
Aug 06 18:31:56 $HOST libvirtd[41122]: hostname: $HOST
Aug 06 18:31:56 $HOST libvirtd[41122]: Cannot find 'dmidecode' in path: No such file or directory
Aug 06 18:31:56 $HOST libvirtd[41122]: Cannot find 'dmidecode' in path: No such file or directory
Aug 06 18:32:20 $HOST systemd[1]: /usr/lib/systemd/system/libvirtd.service:34: Unknown key name 'LimitNOFile' >
Aug 06 18:33:56 $HOST systemd[1]: libvirtd.service: Deactivated successfully.```

Steps to reproduce:
1. Install the libvirt package (# pacman -Syu libvirt <hypervisor packages> iptables-nft [openbsd-netcat] )
2. Attempt to start libvirtd.service (# systemctl start libvirtd.service )
3. Check the status of libvirtd.service ($ systemctl status libvirtd.service)

Proposed Solution:
The dmidecode package should be marked as a dependency of the libvirt package.
This task depends upon

Closed by  Toolybird (Toolybird)
Monday, 07 August 2023, 02:38 GMT
Reason for closing:  Not a bug
Additional comments about closing:  See comments
Comment by Toolybird (Toolybird) - Monday, 07 August 2023, 02:29 GMT
Sorry, but this is totally wrong. dmidecode is, and has always been, optional. There must be something else going on with your setup. To confirm, I just setup libvirt in a fresh VM and it starts up perfectly fine without dmidecode (yes there are warnings about missing dmidecode but they are harmless).
Comment by Toolybird (Toolybird) - Monday, 07 August 2023, 02:34 GMT
PS: the upstream service files were reworked in the latest release, so there might be something else at play there.

There is also a related issue in the latest release, but again, not a big problem. Essentially, there is a bogus service file entry causing spurious log warnings. The issue is already addressed upstream [1]

archvm systemd[1]: /usr/lib/systemd/system/libvirtd.service:34: Unknown key name 'LimitNOFile' in section 'Service', ignoring.
archvm systemd[1]: /usr/lib/systemd/system/virtlockd.service:21: Unknown key name 'LimitNOFile' in section 'Service', ignoring.
archvm systemd[1]: /usr/lib/systemd/system/virtlogd.service:21: Unknown key name 'LimitNOFile' in section 'Service', ignoring.

[1] https://gitlab.com/libvirt/libvirt/-/commit/3d2f3fb72b4c1d636822606ef8b1df29ae4a2be6

Loading...