Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754524AbcDVQqs (ORCPT ); Fri, 22 Apr 2016 12:46:48 -0400 Received: from mga09.intel.com ([134.134.136.24]:6405 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754010AbcDVQqr (ORCPT ); Fri, 22 Apr 2016 12:46:47 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,517,1455004800"; d="scan'208";a="960717840" Date: Fri, 22 Apr 2016 19:46:40 +0300 From: Jarkko Sakkinen To: Stefan Berger Cc: tpmdd-devel@lists.sourceforge.net, jgunthorpe@obsidianresearch.com, linux-security-module@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v11 2/4] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL Message-ID: <20160422164640.GA22741@intel.com> References: <1461000376-2888-1-git-send-email-stefanb@linux.vnet.ibm.com> <1461000376-2888-3-git-send-email-stefanb@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1461000376-2888-3-git-send-email-stefanb@linux.vnet.ibm.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2291 Lines: 70 On Mon, Apr 18, 2016 at 01:26:14PM -0400, Stefan Berger wrote: > Introduce TPM_CHIP_FLAG_VIRTUAL to be used when the chip device has no > parent device. > > Prevent sysfs entries requiring a parent device from being created. > > Signed-off-by: Stefan Berger > Reviewed-by: Jason Gunthorpe Reviewed-by: Jarkko Sakkinen Tested-by: Jarkko Sakkinen /Jarkko > --- > drivers/char/tpm/tpm-chip.c | 7 +++++-- > drivers/char/tpm/tpm.h | 1 + > 2 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c > index 7e2c9cf..a12db8e 100644 > --- a/drivers/char/tpm/tpm-chip.c > +++ b/drivers/char/tpm/tpm-chip.c > @@ -181,6 +181,9 @@ struct tpm_chip *tpm_chip_alloc(struct device *dev, > if (rc) > goto out; > > + if (!dev) > + chip->flags |= TPM_CHIP_FLAG_VIRTUAL; > + > cdev_init(&chip->cdev, &tpm_fops); > chip->cdev.owner = THIS_MODULE; > chip->cdev.kobj.parent = &chip->dev.kobj; > @@ -297,7 +300,7 @@ static void tpm_del_legacy_sysfs(struct tpm_chip *chip) > { > struct attribute **i; > > - if (chip->flags & TPM_CHIP_FLAG_TPM2) > + if (chip->flags & (TPM_CHIP_FLAG_TPM2 | TPM_CHIP_FLAG_VIRTUAL)) > return; > > sysfs_remove_link(&chip->dev.parent->kobj, "ppi"); > @@ -315,7 +318,7 @@ static int tpm_add_legacy_sysfs(struct tpm_chip *chip) > struct attribute **i; > int rc; > > - if (chip->flags & TPM_CHIP_FLAG_TPM2) > + if (chip->flags & (TPM_CHIP_FLAG_TPM2 | TPM_CHIP_FLAG_VIRTUAL)) > return 0; > > rc = __compat_only_sysfs_link_entry_to_kobj( > diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h > index 508e8e0..ff4e53c 100644 > --- a/drivers/char/tpm/tpm.h > +++ b/drivers/char/tpm/tpm.h > @@ -138,6 +138,7 @@ enum tpm_chip_flags { > TPM_CHIP_FLAG_REGISTERED = BIT(0), > TPM_CHIP_FLAG_TPM2 = BIT(1), > TPM_CHIP_FLAG_IRQ = BIT(2), > + TPM_CHIP_FLAG_VIRTUAL = BIT(3), > }; > > struct tpm_chip { > -- > 2.4.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-security-module" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html