[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141016160358.GB12979@intel.com>
Date: Thu, 16 Oct 2014 18:03:58 +0200
From: Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>
To: Greg KH <greg@...ah.com>
Cc: Peter Huewe <peterhuewe@....de>, Ashley Lai <ashley@...leylai.com>,
Marcel Selhorst <tpmdd@...horst.net>,
tpmdd-devel@...ts.sourceforge.net, linux-kernel@...r.kernel.org,
linux-api@...r.kernel.org, josh.triplett@...el.com,
christophe.ricard@...il.com, will.c.arthur@...el.com,
monty.wiseman@...el.com
Subject: Re: [PATCH v3 4/6] tpm: TPM 2.0 sysfs attributes
On Thu, Oct 16, 2014 at 11:31:46AM +0200, Greg KH wrote:
> On Wed, Oct 15, 2014 at 01:35:14PM +0200, Jarkko Sakkinen wrote:
> > +int tpm2_sysfs_add_device(struct tpm_chip *chip)
> > +{
> > + struct pcr_bank *pcr_bank;
> > + struct kobject *pcrs_kobj;
> > + struct device *dev = chip->dev;
> > + int rc;
> > +
> > + rc = sysfs_create_group(&chip->vendor.miscdev.this_device->kobj,
> > + &tpm_dev_group);
> > + if (rc) {
> > + dev_err(dev, "failed to create sysfs attributes, %d\n", rc);
> > + return rc;
> > + }
>
> You just raced and created sysfs files _after_ userspace saw that your
> device was enabled.
Here the options are limited because misc_register already spawns
KOBJ_ADD. Not much to do unless we would wipe the current use of
misc driver completely.
>
> > + pcrs_kobj = kobject_create_and_add("pcrs",
> > + &chip->vendor.miscdev.this_device->kobj);
>
> Ick, no no no no. Never create a kobject under a 'struct device'. You
> just lost all libudev support for any attribute you created under here,
> not good at all. Use a "real" device if you really want a sub-device,
> not a kobject.
Ack, will rework this.
> thanks,
>
> greg k-h
/Jarkko
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists