[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160209062735.GA25621@intel.com>
Date: Tue, 9 Feb 2016 08:27:35 +0200
From: Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>
To: Jason Gunthorpe <jgunthorpe@...idianresearch.com>
Cc: Peter Huewe <peterhuewe@....de>, stable@...r.kernel.org,
tpmdd-devel@...ts.sourceforge.net, linux-kernel@...r.kernel.org
Subject: Re: [tpmdd-devel] [PATCH] tpm: fix the cleanup of struct tpm_chip
On Tue, Feb 09, 2016 at 08:19:51AM +0200, Jarkko Sakkinen wrote:
> On Mon, Feb 08, 2016 at 10:26:55PM -0700, Jason Gunthorpe wrote:
> > On Tue, Feb 09, 2016 at 05:30:30AM +0200, Jarkko Sakkinen wrote:
> > > If the initialization fails before tpm_chip_register(), put_device()
> > > will be not called, which causes release callback not to be called.
> > > This patch fixes the issue by adding put_device() to devres list of
> > > the parent device.
> >
> > Erm, if you do this, then shouldn't the device_unregister change to
> > device_del to keep the kref balanced?
>
> Yes, it should. Weird, I added pr_info() (temporarily) to
> tpm_dev_release() and did occur only once and no crashes whatsoever.
>
> Anyway, you're right.
Update:
https://github.com/jsakkine/linux-tpmdd/commit/a1aa547bbd2178628df798c27abaad073acb2441
I tested that the release gets called (as a sanity check).
Ack?
/Jarkko
Powered by blists - more mailing lists