Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/index.php/Reporting_Bug_Guidelines

Do NOT report bugs when a package is just outdated, or it is in Unsupported. 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#46591 - [linux-firmware] microcode reload via tmpfiles.d fails in container

Attached to Project: Arch Linux
Opened by Johannes Ernst (jernst) - Wednesday, 07 October 2015, 03:00 GMT
Last edited by Evangelos Foutras (foutrelis) - Wednesday, 07 October 2015, 23:59 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To Thomas B├Ąchler (brain0)
Evangelos Foutras (foutrelis)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

The PKGBUILD file contains this:

echo 'w /sys/devices/system/cpu/microcode/reload - - - - 1' \
>"${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"

which works fine on a regular physical box, but not in a Linux container. There's a thread here [1] on the systemd-devel list discussing this.

Error message:

Failed to create file /sys/devices/system/cpu/microcode/reload: Read-only file system

Perhaps the way to fix this is to have a separate systemd.service for this (instead of wedging it into tmpfiles)) which is conditional on not running in a container (using key word ConditionVirtualization per [2])

[1] http://lists.freedesktop.org/archives/systemd-devel/2015-July/033371.html
[2] man systemd.unit

This task depends upon

Closed by  Evangelos Foutras (foutrelis)
Wednesday, 07 October 2015, 23:59 GMT
Reason for closing:  Won't fix
Additional comments about closing:  Remove the kernel and firmware packages from the container.
Comment by Evangelos Foutras (foutrelis) - Wednesday, 07 October 2015, 23:59 GMT
If the container booted its own kernel, it would be a reasonable requirement to have a writable /sys.

Since you're using systemd-nspawn, you don't need to have a kernel installed in the container; simply remove the linux and linux-firmware packages ('pacman -Rs linux' should get rid of all unneeded packages).

Loading...