Re: [PATCH] tpm: remove chip_num parameter from in-kernel API

From: Jarkko Sakkinen
Date: Tue Oct 24 2017 - 18:27:56 EST


On Tue, Oct 24, 2017 at 12:52:08PM -0600, Jason Gunthorpe wrote:
> On Mon, Oct 23, 2017 at 02:38:14PM +0200, Jarkko Sakkinen wrote:
> > The reasoning is simple and obvious. Since every call site passes the
> > value TPM_ANY_NUM (0xFFFF) the parameter does not have right to exist.
> > Refined the documentation of the corresponding functions.
>
> I like this patch, but how about a slightly different take, make this
> change instead:
>
> -struct tpm_chip *tpm_chip_find_get(int chip_num)
> +struct tpm_chip *tpm_chip_find_get(struct tpm_chip *chip);
>
> Where chip == NULL means the default TPM.
>
> And then at all call sites swap TPM_ANY_NUM to NULL and instead of
> flowing an 'int chip_num' to tpm_chip_find_get, flow the 'struct
> tpm_chip *' directly.
>
> This gets us much closer to the desired API with about the same amount
> of churn as this patch has.
>
> Jason

I can do that. I will rework this as a patch set that includes this
proposal. Gives us more clean position to continue. Thank you.

/Jarkko