Re: [tpmdd-devel] [PATCH RFC v2 5/5] tpm2: expose resource manager via a device link /dev/tpms<n>

From: James Bottomley
Date: Fri Jan 13 2017 - 12:40:26 EST


On Fri, 2017-01-13 at 10:25 -0700, Jason Gunthorpe wrote:
> On Thu, Jan 12, 2017 at 10:56:28PM +0200, Jarkko Sakkinen wrote:
>
> > > dev_t tpm_devt;
> >
> > But they should have different major device numbers.
>
> major/minors don't really matter these days since they are dynamic

Right, although we have this weird piece of code:


if (chip->dev_num == 0)
chip->dev.devt = MKDEV(MISC_MAJOR, TPM_MINOR);
else
chip->dev.devt = MKDEV(MAJOR(tpm_devt), chip->dev_num);

So the first TPM device gets the MISC_MAJOR with TPM_MINOR and the rest
get the dynamic major/minor. It means when you do an ls on a complex
system you get something like:

crw------- 1 root root 10, 224 Jan 13 06:21 /dev/tpm0
crw------- 1 root root 246, 1 Jan 13 09:38 /dev/tpm1
crw-rw-rw- 1 root root 246, 65536 Jan 13 06:21 /dev/tpms0
crw-rw-rw- 1 root root 246, 65537 Jan 13 09:38 /dev/tpms1

Perhaps it's time just to junk the reserved misc minor?

James