Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1604320

RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands

From <Alexander.Steffen@infineon.com>
Newsgroups linux.kernel
Subject RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands
Date 2017-03-20 11:00 +0100
Message-ID <tn2gB-2R9-73@gated-at.bofh.it> (permalink)
References <tgXjz-35T-3@gated-at.bofh.it> <tgXjA-35T-31@gated-at.bofh.it> <tm2si-kO-33@gated-at.bofh.it> <tm2LE-KO-25@gated-at.bofh.it> <tm350-Ro-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


>>> 2. When upgrading the firmware on my TPM, it switches to a
>>> non-standard communication mode for the upgrade process and does not
>>> communicate using TPM2.0 commands during this time. Rejecting
>>> non-TPM2.0 commands means upgrading won't be possible anymore.
>>
>> How non standard? Is the basic header even there? Are the lengths and
>> status code right?
>>
>> This might be an argument to add a 'raw' ioctl or something specifically
>> for this special case.
>
> It follows the regular TPM command syntax and looks something like 1.2
> commands.

Yep, so most of it already works with the current implementation.

There are a few special cases that need some thought though. For example, it is possible to use an upgrade to switch the TPM family from 1.2 to 2.0 (or vice versa). In this case it seems useful to let the kernel reinitialize the TPM driver, so it uses the correct timeouts for communication, activates the correct features (resource manager or not?), etc., without needing to reboot the system.

Another problem arises when the upgrade process is interrupted, e.g. because power is lost. Then the TPM is stuck in its non-standard upgrade mode, so the kernel does not recognize it as a valid TPM device and does not export /dev/tpm<n>. But without the device node the upgrader is unable to restart the upgrade process, leaving the TPM forever inaccessible.

I'll try to work on those problems in the coming weeks and provide the fixes. Any input is appreciated.

Alexander

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands <Alexander.Steffen@infineon.com> - 2017-03-17 17:00 +0100
  Re: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2017-03-17 17:20 +0100
    RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands <Peter.Huewe@infineon.com> - 2017-03-17 17:40 +0100
      RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands <Alexander.Steffen@infineon.com> - 2017-03-20 11:00 +0100
        Re: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2017-03-20 18:30 +0100
        Re: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands Ken Goldman <kgold@linux.vnet.ibm.com> - 2017-03-20 23:50 +0100
          RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands <Alexander.Steffen@infineon.com> - 2017-03-21 17:00 +0100
  Re: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> - 2017-03-17 21:50 +0100
    RE: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands <Alexander.Steffen@infineon.com> - 2017-03-20 11:00 +0100
      Re: [tpmdd-devel] [PATCH v3 2/7] tpm: validate TPM 2.0 commands Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> - 2017-03-27 07:30 +0200

csiph-web