On Wed, 2024-07-03 at 21:24 +0300, Jarkko Sakkinen wrote: [...] > diff --git a/include/linux/tpm.h b/include/linux/tpm.h > index 21a67dc9efe8..2844fea4a12a 100644 > --- a/include/linux/tpm.h > +++ b/include/linux/tpm.h > @@ -211,8 +211,8 @@ struct tpm_chip { > u8 null_key_name[TPM2_NAME_SIZE]; > u8 null_ec_key_x[EC_PT_SZ]; > u8 null_ec_key_y[EC_PT_SZ]; > - struct tpm2_auth *auth; > #endif > + struct tpm2_auth *auth; > }; Since auth should only be present if CONFIG_TCG_TPM2_HMAC this is clearly an undesirable thing to do. I think you did it because in a later patch you want to collapse the hmac sessions to use a single routine, but you can make that check with the preprocessor __and function defined in kconfig.h: if (__and(IS_ENABLED(CONFIG_TCG_TPM2_HMAC), chip->auth)) Which will become 0 if the config is not enabled and chip->auth if it is, thus eliminating the code in the former case while not causing the compiler to complain about chip->auth not being defined even if it's under the config parameter. James