Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-26 Thread Jarkko Sakkinen
On Wed, Oct 25, 2017 at 02:17:44PM -0600, Jason Gunthorpe wrote: > On Wed, Oct 25, 2017 at 10:07:46PM +0200, Jarkko Sakkinen wrote: > > > The id has a nice feature that it is unique for one boot cycle you can > > even try to get a chip that has been deleted. It has the most stable > > properties i

Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-25 Thread Jason Gunthorpe
On Wed, Oct 25, 2017 at 10:07:46PM +0200, Jarkko Sakkinen wrote: > The id has a nice feature that it is unique for one boot cycle you can > even try to get a chip that has been deleted. It has the most stable > properties in the long run. It isn't unique, we can re-use ids them via idr_alloc(). W

Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-25 Thread Jarkko Sakkinen
On Wed, Oct 25, 2017 at 01:46:33PM -0600, Jason Gunthorpe wrote: > > struct tpm_chip *tpm_chip_find_get(u64 id) > > { > > struct tpm_chup *chip; > > struct tpm_chip *res = NULL; > > int chip_num = 0; > > int chip_prev; > > > > mutex_lock(&idr_lock); > > > > do { > >

Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-25 Thread Jason Gunthorpe
> struct tpm_chip *tpm_chip_find_get(u64 id) > { > struct tpm_chup *chip; > struct tpm_chip *res = NULL; > int chip_num = 0; > int chip_prev; > > mutex_lock(&idr_lock); > > do { > chip_prev = chip_num; > > chip = idr_get_next(&dev_n

Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-25 Thread Jarkko Sakkinen
On Wed, Oct 25, 2017 at 08:40:26PM +0530, PrasannaKumar Muralidharan wrote: > > -struct tpm_chip *tpm_chip_find_get(int chip_num) > > +struct tpm_chip *tpm_chip_find_get(struct tpm_chip *chip) > > { > > - struct tpm_chip *chip, *res = NULL; > > + struct tpm_chip *res = NULL; > > +

Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-25 Thread Jason Gunthorpe
On Wed, Oct 25, 2017 at 01:55:04PM +0200, Jarkko Sakkinen wrote: > Device number (the character device index) is not a stable identifier > for a TPM chip. That is the reason why every call site passes > TPM_ANY_NUM to tpm_chip_find_get(). > > This commit changes the API in a way that instead a str

Re: [PATCH v2] tpm: use struct tpm_chip for tpm_chip_find_get()

2017-10-25 Thread PrasannaKumar Muralidharan
Hi Jarkko, On 25 October 2017 at 17:25, Jarkko Sakkinen wrote: > Device number (the character device index) is not a stable identifier > for a TPM chip. That is the reason why every call site passes > TPM_ANY_NUM to tpm_chip_find_get(). > > This commit changes the API in a way that instead a stru