[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aHuo8Fh_S8aEi7VM@kernel.org>
Date: Sat, 19 Jul 2025 17:17:20 +0300
From: Jarkko Sakkinen <jarkko@...nel.org>
To: Randy Dunlap <rdunlap@...radead.org>
Cc: linux-kernel@...r.kernel.org, keyrings@...r.kernel.org,
linux-integrity@...r.kernel.org,
Stefan Berger <stefanb@...ux.ibm.com>,
Jarkko Sakkinen <jarkko.sakkinen@...nsys.com>,
Jonathan Corbet <corbet@....net>, Peter Huewe <peterhuewe@....de>,
Jason Gunthorpe <jgg@...pe.ca>,
Andrew Morton <akpm@...ux-foundation.org>,
"Paul E. McKenney" <paulmck@...nel.org>,
Steven Rostedt <rostedt@...dmis.org>,
Neeraj Upadhyay <Neeraj.Upadhyay@....com>,
"Borislav Petkov (AMD)" <bp@...en8.de>,
Arnd Bergmann <arnd@...db.de>,
Frank van der Linden <fvdl@...gle.com>,
"open list:DOCUMENTATION" <linux-doc@...r.kernel.org>
Subject: Re: [RFC PATCH] tpm, tpm_vtpm_proxy: boot-time TPM
On Wed, Jul 16, 2025 at 11:44:02AM -0700, Randy Dunlap wrote:
> (mostly nits, along with Paul's comments)
>
>
> On 7/16/25 5:18 AM, Jarkko Sakkinen wrote:
> > From: Jarkko Sakkinen <jarkko.sakkinen@...nsys.com>
> >
> > Provide a kernel command-line parameter named as `supplicant`, which
> > contains a path to an TPM emulator binary. When defind, the kernel will
>
> to a TPM
>
> > launch the program during boot-time.
> >
> > This feature is most useful in feature testing e.g., in environments
>
> testing, e.g.,
>
> > where other means are not possible, such as CI runners. Its original use
> > case highlights also quite well of its applicability for pre-production
> > hardware: it was used to provide a TPM implemnentation for a RISC-V SoC
> > running on FPGA with no TPM HW implementation at the time.
> >
> > Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@...nsys.com>
> > ---
> > Bumped into this in my archives so thought to make it available just in
> > case anyone is interested.
> > ---
> > .../admin-guide/kernel-parameters.txt | 14 +++++
> > drivers/char/tpm/tpm_vtpm_proxy.c | 51 +++++++++++++++++++
> > 2 files changed, 65 insertions(+)
> >
> > diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> > index f1f2c0874da9..e062de99480e 100644
> > --- a/Documentation/admin-guide/kernel-parameters.txt
> > +++ b/Documentation/admin-guide/kernel-parameters.txt
> > @@ -7230,6 +7230,20 @@
> > defined by Trusted Computing Group (TCG) see
> > https://trustedcomputinggroup.org/resource/pc-client-platform-tpm-profile-ptp-specification/
> >
> > + tpm_vtpm_proxy.supplicant= [TPM]
> > + When defined, this field must contain a legit path to a
>
> legitimate
> or valid
>
> > + program emulating a TPM chip, which will be started
> > + during the driver initialization, thus providing a
> > + mechanism for the user space have an emulated TPM from
> > + the get go. Kernel prepares the process with a file
>
> get-go.
> or just don't use slang terms.
>
> > + pre-opened file descriptor in the index 3 for
> > + /dev/vtpmx.
> > +
> > + An emulator can optionally provide support for
> > + localities by reacting to the vendor command defined
> > + by the driver: 0x20001000. Its payload is a single
> > + byte containing the new locality.
> > +
> > tp_printk [FTRACE]
> > Have the tracepoints sent to printk as well as the
> > tracing ring buffer. This is useful for early boot up
>
> thanks.
> --
> ~Randy
>
Thank you for reviewing this (especially given how bad shape it was)!
BR, Jarkko
Powered by blists - more mailing lists