On Tue, Jun 14, 2022 at 11:48:30AM -0600, Rob Herring wrote:
> (),On Tue, Jun 14, 2022 at 10:13 AM Stefan Berger <[email protected]>
> wrote:
> >
> > The memory area of the TPM measurement log is currently not properly
> > duplicated for carrying it across kexec when an Open Firmware
> > Devicetree is used. Therefore, the contents of the log get corrupted.
> > Fix this for the kexec_file_load() syscall by allocating a buffer and
> > copying the contents of the existing log into it. The new buffer is
> > preserved across the kexec and a pointer to it is available when the new
> > kernel is started. To achieve this, store the allocated buffer's address
> > in the flattened device tree (fdt) under the name linux,tpm-kexec-buffer
> > and search for this entry early in the kernel startup before the TPM
> > subsystem starts up. Adjust the pointer in the of-tree stored under
> > linux,sml-base to point to this buffer holding the preserved log. The
> > TPM driver can then read the base address from this entry when making
> > the log available.
>
> > +{
> > + const u32 *sizep;
> > + const u64 *basep;
> > +
> > + sizep = of_get_property(np, "linux,sml-size", NULL);
> > + basep = of_get_property(np, "linux,sml-base", NULL);
>
> Any new properties need a schema. For chosen, that's located here[1].
> The more common pattern for similar properties is <base size>.
I noticed these are already documented and are TPM node properties. I
was thinking these are chosen node properties. Though it would be good
to get these common TPM properties converted to schema. That can live in
the kernel tree.
Rob
_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec