[PATCH v12 15/19] tpm, tpm_tis: Address positive localities in tpm_tis_request_locality()

ross.philipson at oracle.com ross.philipson at oracle.com
Fri Mar 7 11:35:53 PST 2025


On 3/6/25 11:07 PM, Jarkko Sakkinen wrote:
> On Thu, Dec 19, 2024 at 11:42:12AM -0800, Ross Philipson wrote:
>> From: "Daniel P. Smith" <dpsmith at apertussolutions.com>
>>
>> Validate that the input locality is within the correct range, as specified
>> by TCG standards, and increase the locality count also for the positive
>> localities.
>>
>> Signed-off-by: Daniel P. Smith <dpsmith at apertussolutions.com>
>> Signed-off-by: Ross Philipson <ross.philipson at oracle.com>
>> Signed-off-by: Jarkko Sakkinen <jarkko at kernel.org>
>> ---
>>   drivers/char/tpm/tpm_tis_core.c | 5 ++++-
>>   1 file changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
>> index c58f360fb4a4..c86100ad743a 100644
>> --- a/drivers/char/tpm/tpm_tis_core.c
>> +++ b/drivers/char/tpm/tpm_tis_core.c
>> @@ -234,10 +234,13 @@ static int tpm_tis_request_locality(struct tpm_chip *chip, int l)
>>   	struct tpm_tis_data *priv = dev_get_drvdata(&chip->dev);
>>   	int ret = 0;
>>   
>> +	if (l < 0 || l > TPM_MAX_LOCALITY)
>> +		return -EINVAL;
> 
> I would mind if we put do dev_warn() here because it is unexpected
> condition or even perhaps dev_err(). Or am I missing something?

No I think you are right. We will look at it but will likely take your 
suggestion here.

Thanks
Ross

> 
>> +
>>   	mutex_lock(&priv->locality_count_mutex);
>>   	if (priv->locality_count == 0)
>>   		ret = __tpm_tis_request_locality(chip, l);
>> -	if (!ret)
>> +	if (ret >= 0)
>>   		priv->locality_count++;
>>   	mutex_unlock(&priv->locality_count_mutex);
>>   	return ret;
>> -- 
>> 2.39.3
>>
> 
> I agree with this now.
> 
> BR, Jarkko




More information about the kexec mailing list