All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/3] prepare for TPM 2.0
@ 2014-10-26  9:13 Jarkko Sakkinen
  2014-10-26  9:13 ` [PATCH v3 1/3] tpm: merge duplicate transmit_cmd() functions Jarkko Sakkinen
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Jarkko Sakkinen @ 2014-10-26  9:13 UTC (permalink / raw)
  To: Peter Huewe, Ashley Lai, Marcel Selhorst
  Cc: tpmdd-devel, linux-kernel, josh.triplett, christophe.ricard,
	jason.gunthorpe, Jarkko Sakkinen

This patch set fixes two race conditions in the TPM subsystem:

* Two-phase initialization for struct tpm_chip so that device can
  initialize fully initialize before exposing itself to the user
  space. Also, in future TPM2 devices must be flagged before they
  can be registered.
* Machines where there are two TPM devices exposed by ACPI have
  a racy lookup for the PPI interface. This patch set fixes this
  issues

In addition, transmit_cmd() is renamed as tpm_transmit_cmd() and
made opaque so that separate command structure can be introduced
for TPM2.

Comments about v1:
* I think this could be pulled to 3.18 because this clearly fixes
  bugs in the current implementation.

Changes since v1:
* Removed dev_dbgs from tpm-chip.c
* Use driver_lock for dev_mask (the problem was existing also in
  tpm-interface.c when the code was moved).
* Check for bios_dir nullity when removed (the problem was existing
  also in tpm-interface.c when the code was moved).
* Cleaned up the control flow in tpm_i2c_stm_st33.c and tpm_atmel.c.
* Cleaned up the control flow in tpm_ppi.c.

Comments about v2:
* Thanks to Jason Gunthorpe for reviewing v1.
* I'm at T2 infosec conference right now so I wasn't able to test the
  force paths in tpm_atmel.c and tpm_tis.c.

Changes since v2:
* Regression in tpm-dev.c, must use tpm_transmit() instead of
  tpm_transmit_cmd().

Jarkko Sakkinen (3):
  tpm: merge duplicate transmit_cmd() functions
  tpm: two-phase chip management functions
  tpm: fix multiple race conditions in tpm_ppi.c

 drivers/char/tpm/Makefile           |   2 +-
 drivers/char/tpm/tpm-chip.c         | 196 +++++++++++++++++++++++++++++++++++
 drivers/char/tpm/tpm-interface.c    | 197 +++++-------------------------------
 drivers/char/tpm/tpm-sysfs.c        |  23 +----
 drivers/char/tpm/tpm.h              |  30 ++++--
 drivers/char/tpm/tpm_atmel.c        |  12 ++-
 drivers/char/tpm/tpm_i2c_atmel.c    |  33 ++----
 drivers/char/tpm/tpm_i2c_infineon.c |  37 ++-----
 drivers/char/tpm/tpm_i2c_nuvoton.c  |  44 +++-----
 drivers/char/tpm/tpm_i2c_stm_st33.c |  38 +++----
 drivers/char/tpm/tpm_ibmvtpm.c      |  17 ++--
 drivers/char/tpm/tpm_infineon.c     |  29 +++---
 drivers/char/tpm/tpm_nsc.c          |  14 ++-
 drivers/char/tpm/tpm_ppi.c          | 136 +++++++++++++++----------
 drivers/char/tpm/tpm_tis.c          |  94 ++++++++---------
 drivers/char/tpm/xen-tpmfront.c     |  14 +--
 16 files changed, 467 insertions(+), 449 deletions(-)
 create mode 100644 drivers/char/tpm/tpm-chip.c

-- 
2.1.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-10-28  6:01 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-26  9:13 [PATCH v3 0/3] prepare for TPM 2.0 Jarkko Sakkinen
2014-10-26  9:13 ` [PATCH v3 1/3] tpm: merge duplicate transmit_cmd() functions Jarkko Sakkinen
2014-10-26  9:13 ` [PATCH v3 2/3] tpm: two-phase chip management functions Jarkko Sakkinen
2014-10-26  9:13 ` [PATCH v3 3/3] tpm: fix multiple race conditions in tpm_ppi.c Jarkko Sakkinen
2014-10-27  9:55 ` [PATCH v3 0/3] prepare for TPM 2.0 Jarkko Sakkinen
2014-10-27 16:30   ` [tpmdd-devel] " Scot Doyle
2014-10-28  6:01     ` Jarkko Sakkinen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.