]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
stub: Mention that VirtualSize should be <= SizeOfRawData
authorDaan De Meyer <daan.j.demeyer@gmail.com>
Tue, 4 Feb 2025 13:52:02 +0000 (14:52 +0100)
committerLuca Boccassi <luca.boccassi@gmail.com>
Thu, 13 Feb 2025 15:54:46 +0000 (15:54 +0000)
(cherry picked from commit 2443b4d9a17787fd0a63d6591fbdb74650c43994)

man/systemd-stub.xml

index 902b4013a040904861f465c4bd1a8d260f814904..779867f4d6cb0ced625ba880fdd20acae7ccdb5c 100644 (file)
     core kernel, the embedded initrd and kernel command line (see above for a full list), including all UKI
     profiles.</para>
 
+    <para>Also note that when <command>systemd-stub</command> measures a PE section, it will measure the
+    amount of bytes that the section takes up in memory (<varname>VirtualSize</varname>) and not the amount
+    of bytes that the section takes up on disk (<varname>SizeOfRawData</varname>). This means that if the
+    size in memory is larger than the size on disk, <command>systemd-stub</command> will end up measuring
+    extra zeroes. To avoid this from happening, it is recommended to make sure that the size in memory of
+    each section that is measured by <command>systemd-stub</command> is always smaller than or equal to the
+    size on disk. <command>ukify</command> automatically makes sure this is the case when building UKIs or
+    addons.</para>
+
     <para>Also note that the Linux kernel will measure all initrds it receives into TPM PCR 9. This means
     every type of initrd (of the selected UKI profile) will possibly be measured two or three times: the
     initrds embedded in the kernel image will be measured to PCR 4, PCR 9 and PCR 11; the initrd synthesized