From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753182AbcBIG1q (ORCPT ); Tue, 9 Feb 2016 01:27:46 -0500 Received: from mga11.intel.com ([192.55.52.93]:27212 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750781AbcBIG1o (ORCPT ); Tue, 9 Feb 2016 01:27:44 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.22,420,1449561600"; d="scan'208";a="899126781" Date: Tue, 9 Feb 2016 08:27:35 +0200 From: Jarkko Sakkinen To: Jason Gunthorpe Cc: Peter Huewe , stable@vger.kernel.org, tpmdd-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org Subject: Re: [tpmdd-devel] [PATCH] tpm: fix the cleanup of struct tpm_chip Message-ID: <20160209062735.GA25621@intel.com> References: <1454988630-27942-1-git-send-email-jarkko.sakkinen@linux.intel.com> <20160209052655.GA12657@obsidianresearch.com> <20160209061951.GA29607@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160209061951.GA29607@intel.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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