summaryrefslogtreecommitdiffstats
path: root/units/systemd-pcrextend@.service.in
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2023-11-24 18:01:56 +0100
committerLennart Poettering <lennart@poettering.net>2024-01-03 13:49:02 +0100
commit4e1f0037b85d1b3c272e13862f44eb35844a18b1 (patch)
tree4dc975d7a968241a756335a29af76efce12a358f /units/systemd-pcrextend@.service.in
parenttest-64: only look at plugged devices, not all of them (diff)
downloadsystemd-4e1f0037b85d1b3c272e13862f44eb35844a18b1.tar.xz
systemd-4e1f0037b85d1b3c272e13862f44eb35844a18b1.zip
units: add a tpm2.target synchronization point and small generator that pulls in
Distributions apparently only compile a subset of TPM2 drivers into the kernel. For those not compiled it but provided as kmod we need a synchronization point: we must wait before the first TPM2 interaction until the driver is available and accessible. This adds a tpm2.target unit as such a synchronization point. It's ordered after /dev/tpmrm0, and is pulled in by a generator whenever we detect that the kernel reported a TPM2 to exist but we have no device for it yet. This should solve the issue, but might create problems: if there are TPM devices supported by firmware that we don't have Linux drivers for we'll hang for a bit. Hence let's add a kernel cmdline switch to disable (or alternatively force) this logic. Fixes: #30164
Diffstat (limited to 'units/systemd-pcrextend@.service.in')
-rw-r--r--units/systemd-pcrextend@.service.in1
1 files changed, 1 insertions, 0 deletions
diff --git a/units/systemd-pcrextend@.service.in b/units/systemd-pcrextend@.service.in
index 2305b1cd4c..6020a21c40 100644
--- a/units/systemd-pcrextend@.service.in
+++ b/units/systemd-pcrextend@.service.in
@@ -11,6 +11,7 @@
Description=TPM2 PCR Extension (Varlink)
Documentation=man:systemd-pcrphase.service(8)
DefaultDependencies=no
+After=tpm2.target
Conflicts=shutdown.target initrd-switch-root.target
Before=shutdown.target initrd-switch-root.target