Re: [tpmdd-devel] [PATCH v1 12/12] tpm: TPM2 sysfs attributes

From: Jason Gunthorpe
Date: Wed Sep 24 2014 - 13:59:49 EST

On Wed, Sep 24, 2014 at 01:34:11PM -0400, Stefan Berger wrote:
> On 09/24/2014 01:13 PM, Jason Gunthorpe wrote:
> >On Wed, Sep 24, 2014 at 12:06:02PM +0300, Jarkko Sakkinen wrote:
> >>+static ssize_t durations_show(struct device *dev, struct device_attribute *attr,
> >>+ char *buf)
> >>+{
> >>+ struct tpm_chip *chip = dev_get_drvdata(dev);
> >>+
> >>+ if (chip->vendor.duration[TPM_LONG] == 0)
> >>+ return 0;
> >>+
> >>+ return sprintf(buf, "%d %d %d [%s]\n",
> >>+ jiffies_to_usecs(chip->vendor.duration[TPM_SHORT]),
> >>+ jiffies_to_usecs(chip->vendor.duration[TPM_MEDIUM]),
> >>+ jiffies_to_usecs(chip->vendor.duration[TPM_LONG]),
> >>+ chip->vendor.duration_adjusted
> >>+ ? "adjusted" : "original");
> >>+}
> >>+static DEVICE_ATTR_RO(durations);
> >Seem useless since the durations are constant, drop it?
> We show them for TPM 1.2 as well, so I'd keep them fo TPM2.

The durations are constant and hardwired in the driver for TPM2, and
the sysfs file format does not follow the one-value-per-file

So it doesn't display anything useful. In TPM2 mode all the timeouts
are constant and known, so I'd rather see it go away.

> With all the problems we had with TPM 1.2 TPM's wrong timeouts and
> showing them in sysfs, why not show them for TPM2 as well?

We had problems with devices reporting the wrong timeout from their
cap queries - that isn't possible in TPM2.

Both of these values should live in debugfs anyhow.

It would be nice to start with a fresh set of correct sysfs files for
TPM2, since essentially everything is different about the userspace
interface we can safely make a breaking change here.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at