This series of patches converts IMA's usage of the tpm_chip to find a TPM chip initially and use it until the machine is shut down. To do this we need to introduce a kref for the tpm_chip that IMA and all other users of a tpm_chip hold onto until they don't need the TPM chip anymore. Stefan v2->v3: - renaming tpm_chip_find_get() to tpm_get_ops() - IMA does not lock access to ima_tpm_chip anymore - IMA does not have a reboot notifier to release the chip anymore v1->v2: - use the kref of the device via get_device()/put_device() Stefan Berger (4): tpm: rename tpm_chip_find_get() to tpm_get_ops() tpm: Implement tpm_chip_find() for other subsystems to find a TPM chip ima: Use tpm_chip_find() and call TPM functions with a tpm_chip ima: Get rid of ima_used_chip and use ima_tpm_chip != NULL instead drivers/char/tpm/tpm-chip.c | 31 +++++++++++++++++++++++++++++-- drivers/char/tpm/tpm-interface.c | 14 +++++++------- drivers/char/tpm/tpm.h | 2 +- include/linux/tpm.h | 5 +++++ security/integrity/ima/ima.h | 2 +- security/integrity/ima/ima_crypto.c | 4 ++-- security/integrity/ima/ima_init.c | 16 +++++----------- security/integrity/ima/ima_queue.c | 4 ++-- 8 files changed, 52 insertions(+), 26 deletions(-) -- 2.13.6