On Tue, Feb 09, 2021 at 12:52:17PM +0100, Lino Sanfilippo wrote: > > @@ -640,8 +643,10 @@ void tpm_chip_unregister(struct tpm_chip *chip) > > if (IS_ENABLED(CONFIG_HW_RANDOM_TPM)) > > hwrng_unregister(&chip->hwrng); > > tpm_bios_log_teardown(chip); > > - if (chip->flags & TPM_CHIP_FLAG_TPM2) > > + if (chip->flags & TPM_CHIP_FLAG_TPM2) { > > cdev_device_del(&chip->cdevs, &chip->devs); > > + put_device(&chip->devs); > > + } > > tpm_del_char_device(chip); > > } > > EXPORT_SYMBOL_GPL(tpm_chip_unregister); > > > > I tested the solution you scetched and it fixes the issue for me. Will you send a (real) patch for this? No, feel free to bundle this up with any fixes needed and send it with a Signed-off-by from both of us I did it pretty fast so it will need a careful read that there isn't a typo Thanks, Jason