Signed-off-by: Jarkko Sakkinen <[email protected]>
Reported-by: Stefan Berger <[email protected]>
---
drivers/char/tpm/tpm-chip.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c
index a12db8e..1965dc7 100644
--- a/drivers/char/tpm/tpm-chip.c
+++ b/drivers/char/tpm/tpm-chip.c
@@ -270,7 +270,8 @@ static void tpm_del_char_device(struct tpm_chip *chip)
/* Make the driver uncallable. */
down_write(&chip->ops_sem);
- tpm2_shutdown(chip, TPM2_SU_CLEAR);
+ if (chip->flags & TPM_CHIP_FLAG_TPM2)
+ tpm2_shutdown(chip, TPM2_SU_CLEAR);
chip->ops = NULL;
up_write(&chip->ops_sem);
}
--
2.7.4
On Mon, Apr 25, 2016 at 12:21:30PM +0300, Jarkko Sakkinen wrote:
> Signed-off-by: Jarkko Sakkinen <[email protected]>
> Reported-by: Stefan Berger <[email protected]>
> drivers/char/tpm/tpm-chip.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
Reviewed-By: Jason Gunthorpe <[email protected]>
Fixes: 20e0152393b41 ("tpm: fix crash in tpm_tis deinitialization")
> diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c
> index a12db8e..1965dc7 100644
> +++ b/drivers/char/tpm/tpm-chip.c
> @@ -270,7 +270,8 @@ static void tpm_del_char_device(struct tpm_chip *chip)
>
> /* Make the driver uncallable. */
> down_write(&chip->ops_sem);
> - tpm2_shutdown(chip, TPM2_SU_CLEAR);
> + if (chip->flags & TPM_CHIP_FLAG_TPM2)
> + tpm2_shutdown(chip, TPM2_SU_CLEAR);
> chip->ops = NULL;
> up_write(&chip->ops_sem);
> }
On Mon, Apr 25, 2016 at 11:57:20AM -0600, Jason Gunthorpe wrote:
> On Mon, Apr 25, 2016 at 12:21:30PM +0300, Jarkko Sakkinen wrote:
> > Signed-off-by: Jarkko Sakkinen <[email protected]>
> > Reported-by: Stefan Berger <[email protected]>
> > drivers/char/tpm/tpm-chip.c | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
>
> Reviewed-By: Jason Gunthorpe <[email protected]>
> Fixes: 20e0152393b41 ("tpm: fix crash in tpm_tis deinitialization")
Thanks and thanks for the fixes line (forgot to add it) :)
/Jarkko
> > diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c
> > index a12db8e..1965dc7 100644
> > +++ b/drivers/char/tpm/tpm-chip.c
> > @@ -270,7 +270,8 @@ static void tpm_del_char_device(struct tpm_chip *chip)
> >
> > /* Make the driver uncallable. */
> > down_write(&chip->ops_sem);
> > - tpm2_shutdown(chip, TPM2_SU_CLEAR);
> > + if (chip->flags & TPM_CHIP_FLAG_TPM2)
> > + tpm2_shutdown(chip, TPM2_SU_CLEAR);
> > chip->ops = NULL;
> > up_write(&chip->ops_sem);
> > }
>
On 04/25/2016 01:57 PM, Jason Gunthorpe wrote:
> On Mon, Apr 25, 2016 at 12:21:30PM +0300, Jarkko Sakkinen wrote:
>> Signed-off-by: Jarkko Sakkinen <[email protected]>
>> Reported-by: Stefan Berger <[email protected]>
>> drivers/char/tpm/tpm-chip.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
> Reviewed-By: Jason Gunthorpe <[email protected]>
> Fixes: 20e0152393b41 ("tpm: fix crash in tpm_tis deinitialization")
Tested-by: Stefan Berger <[email protected]>