This patch series fixes some flaws in the TPM code. Most importantly a
reference count issue (patch 2) and a possible NULL pointer access
(patch 3). Patch 1 fixes the error path in tpmm_chip_alloc() and is in
preparation to patch 2 which extends this function. Patch 4 introduces
a new function tpm_chip_free() which is used as a counterpart to
tpm_chip_alloc(). The main reason for this function is to hide the
internals of tpm_chip cleanup by means of multiple reference count
handling.
Lino Sanfilippo (4):
tpm: in case of error properly cleanup in tpmm_chip_alloc
tpm: fix reference counting for struct tpm_chip
tpm: in tpm2_del_space check if ops pointer is still valid
tpm: Provide a function tpm_chip_free() to free tpm chips
drivers/char/tpm/tpm-chip.c | 33 ++++++++++++++++++++++++++++++---
drivers/char/tpm/tpm.h | 1 +
drivers/char/tpm/tpm2-space.c | 2 +-
drivers/char/tpm/tpm_ftpm_tee.c | 4 ++--
drivers/char/tpm/tpm_vtpm_proxy.c | 2 +-
5 files changed, 35 insertions(+), 7 deletions(-)
--
2.7.4