mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Gregory Price <gourry@gourry.net>
To: linux-efi@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, ardb@kernel.org, leitao@debian.org,
	usamaarif642@gmail.com,
	sathyanarayanan.kuppuswamy@linux.intel.com,
	ilias.apalodimas@linaro.org
Subject: [PATCH 0/6] libstub,tpm: fix small bugs and improve error reporting
Date: Fri,  6 Sep 2024 16:27:39 -0400	[thread overview]
Message-ID: <20240906202745.11159-1-gourry@gourry.net> (raw)

The efi/tpm code has a number of small signed/unsigned bugs and
inaccuracies are prone to cause further bugs in a difficult to
debug manner.  For example, there is a signed/unsigned mismatch
in efi/tpm.c that leads to a memblock_reserve on a range with
an effectively negative length.

Additionally, there are silently ignored error conditions that are
better explicitly reported.

Finally, there exists some bad interaction between tpm and kexec
that causes the log version and the log size to become corrupted.
The log size cannot be reasonably sanity checked, as the value is
a u32 and there is no defined max-size per the spec - however the
version can at least be sanity checked. This reports the error and
avoids calling memblock_reserve with clearly corrupted arguments.

Signed-off-by: Gregory Price <gourry@gourry.net>

Gregory Price (6):
  tpm: fix signed/unsigned bug when checking event logs
  tpm: do not ignore memblock_reserve return value
  libstub,tpm: provide indication of failure when getting event log
  tpm: sanity check the log version before using it
  tpm: fix unsigned/signed mismatch errors related to
    __calc_tpm2_event_size
  libstub,tpm: do not ignore failure case when reading final event log

 drivers/firmware/efi/libstub/tpm.c | 14 ++++++++----
 drivers/firmware/efi/tpm.c         | 34 +++++++++++++++++++++---------
 include/linux/tpm_eventlog.h       |  2 +-
 3 files changed, 35 insertions(+), 15 deletions(-)

-- 
2.43.0


             reply	other threads:[~2024-09-06 20:28 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-06 20:27 Gregory Price [this message]
2024-09-06 20:27 ` [PATCH 1/6] tpm: fix signed/unsigned bug when checking event logs Gregory Price
2024-09-06 20:27 ` [PATCH 2/6] tpm: do not ignore memblock_reserve return value Gregory Price
2024-09-13  7:02   ` Ilias Apalodimas
2024-09-13 12:58     ` Gregory Price
2024-09-06 20:27 ` [PATCH 3/6] libstub,tpm: provide indication of failure when getting event log Gregory Price
2024-09-13  6:59   ` Ilias Apalodimas
2024-09-13 12:57     ` Gregory Price
2024-09-13 13:10       ` Ilias Apalodimas
2024-09-13 23:06         ` Gregory Price
2024-09-06 20:27 ` [PATCH 4/6] tpm: sanity check the log version before using it Gregory Price
2024-09-13  6:40   ` Ilias Apalodimas
2024-09-13 12:56     ` Gregory Price
2024-09-13 13:39       ` Ilias Apalodimas
2024-09-13 13:44         ` Ard Biesheuvel
2024-09-13 13:47           ` Ard Biesheuvel
2024-09-13 14:03             ` Gregory Price
2024-09-06 20:27 ` [PATCH 5/6] tpm: fix unsigned/signed mismatch errors related to __calc_tpm2_event_size Gregory Price
2024-09-06 20:27 ` [PATCH 6/6] libstub,tpm: do not ignore failure case when reading final event log Gregory Price
2024-09-13 15:25   ` Ard Biesheuvel
2024-09-13 15:29     ` Gregory Price
2024-09-13 15:59       ` Ard Biesheuvel
2024-09-13 17:36         ` Gregory Price

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=20240906202745.11159-1-gourry@gourry.net \
    --to=gourry@gourry.net \
    --cc=ardb@kernel.org \
    --cc=ilias.apalodimas@linaro.org \
    --cc=leitao@debian.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sathyanarayanan.kuppuswamy@linux.intel.com \
    --cc=usamaarif642@gmail.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

all inboxes | Powered by JetHome®