linux-integrity.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jarkko Sakkinen <jarkko@kernel.org>
To: linux-integrity@vger.kernel.org
Cc: keyring@vger.kernel.org, dpsmith@apertussolutions.com,
	ross.philipson@oracle.com, Jonathan McDowell <noodles@earth.li>,
	Roberto Sassu <roberto.sassu@huawei.com>,
	Stefano Garzarella <sgarzare@redhat.com>,
	Jarkko Sakkinen <jarkko@kernel.org>
Subject: [PATCH v6 00/10] Prepare TPM driver for Trenchboot
Date: Sat, 18 Oct 2025 14:17:15 +0300	[thread overview]
Message-ID: <20251018111725.3116386-1-jarkko@kernel.org> (raw)

Overview
========

Prepare TPM driver for Trenchboot by making tpm-buf easy to compile as an
independent compilation unit, and generally be IO and memory agnostic.
This allows Trenchboot easily use this code to build and parse TPM 1.2 and
TPM 2.0 commands.

Backlog (of stuff that will end up to a follow-up patch sets):

1. Static flat duration table for TPM 1.2. Such feature already landed
   in v6.17 for TPM 2.0. We probably can figure out some sane roof
   values for the legacy standard, right? This allows to share more
   code "via data".
2. Not a blocker for sending subsequent versions of Trenchboot patch set
   but we could look at slicing tpm_tis code at some point of future.
   It could be even that redundant parts could be "merged" after the
   feature lands but this is neither a promise (depends on how things
   look overall).

This patch set does not do a lot heavy-lifting but is beefed enough that
it is better not fatten it up too much anymore. Sane buffering is a
great starting point.

v6:
- Fixed a memory leak that I found trom trusted keys.
v5:
- Order sobs correctly.
- Fixed a minor glitch in 9/9.
v4:
- PCR patch has been removed because it does not fly without Trenchboot
  context.
v3:
- I think 6.19 is a better goal for this and thus expanded the series to
  be a generic Trenchboot enablers series. This version also consolidates
  my two separate ongoing series.
v2:
- While including fixes from v1, this patch set has a refocus in order to
  do minimal changes to make code base more compatible  Trenchboot.

Jarkko Sakkinen (10):
  tpm: Cap the number of PCR banks
  tpm: Use -EPERM as fallback error code in tpm_ret_to_err
  KEYS: trusted: Fix memory leak in tpm2_load()
  KEYS: trusted: Use tpm_ret_to_err() in trusted_tpm2
  tpm2-sessions: Remove 'attributes' from tpm_buf_append_auth
  tpm2-sessions: Unmask tpm_buf_append_hmac_session()
  KEYS: trusted: Open code tpm2_buf_append()
  tpm-buf: unify TPM_BUF_BOUNDARY_ERROR and TPM_BUF_OVERFLOW
  tpm-buf: Remove chip parameter from tpm_buf_append_handle
  tpm-buf: Enable managed and stack allocations.

 drivers/char/tpm/tpm-buf.c                | 141 ++++++----
 drivers/char/tpm/tpm-chip.c               |  13 +-
 drivers/char/tpm/tpm-sysfs.c              |  21 +-
 drivers/char/tpm/tpm.h                    |   2 -
 drivers/char/tpm/tpm1-cmd.c               | 185 +++++--------
 drivers/char/tpm/tpm2-cmd.c               | 313 ++++++++++------------
 drivers/char/tpm/tpm2-sessions.c          | 129 +++++----
 drivers/char/tpm/tpm2-space.c             |  44 ++-
 drivers/char/tpm/tpm_vtpm_proxy.c         |  30 +--
 include/linux/tpm.h                       |  65 ++---
 security/keys/trusted-keys/trusted_tpm1.c |  34 ++-
 security/keys/trusted-keys/trusted_tpm2.c | 267 ++++++++----------
 12 files changed, 554 insertions(+), 690 deletions(-)

-- 
2.39.5


             reply	other threads:[~2025-10-18 11:17 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-18 11:17 Jarkko Sakkinen [this message]
2025-10-18 11:17 ` [PATCH v6 01/10] tpm: Cap the number of PCR banks Jarkko Sakkinen
2025-10-20 11:45   ` Jonathan McDowell
2025-10-24 18:50     ` Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 02/10] tpm: Use -EPERM as fallback error code in tpm_ret_to_err Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 03/10] KEYS: trusted: Fix memory leak in tpm2_load() Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 04/10] KEYS: trusted: Use tpm_ret_to_err() in trusted_tpm2 Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 05/10] tpm2-sessions: Remove 'attributes' from tpm_buf_append_auth Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 06/10] tpm2-sessions: Unmask tpm_buf_append_hmac_session() Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 07/10] KEYS: trusted: Open code tpm2_buf_append() Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 08/10] tpm-buf: unify TPM_BUF_BOUNDARY_ERROR and TPM_BUF_OVERFLOW Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 09/10] tpm-buf: Remove chip parameter from tpm_buf_append_handle Jarkko Sakkinen
2025-10-18 11:17 ` [PATCH v6 10/10] tpm-buf: Enable managed and stack allocations Jarkko Sakkinen
2025-10-20  9:04   ` Stefano Garzarella
2025-10-24 18:49     ` Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251018111725.3116386-1-jarkko@kernel.org \
    --to=jarkko@kernel.org \
    --cc=dpsmith@apertussolutions.com \
    --cc=keyring@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=noodles@earth.li \
    --cc=roberto.sassu@huawei.com \
    --cc=ross.philipson@oracle.com \
    --cc=sgarzare@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).