On Tue Jul 16, 2024 at 9:52 PM EEST, Jarkko Sakkinen wrote: > tpm_buf_append_name() has the following snippet in the beginning: > > if (!tpm2_chip_auth(chip)) { > tpm_buf_append_u32(buf, handle); > /* count the number of handles in the upper bits of flags */ > buf->handles++; > return; > } > > The claim in the comment is wrong, and the comment is in the wrong place > as alignment in this case should not anyway be a concern of the call > site. In essence the comment is lying about the code, and thus needs to > be adressed. > > Further, 'handles' was incorrectly place to struct tpm_buf, as tpm-buf.c > does manage its state. It is easy to grep that only piece of code that > actually uses the field is tpm2-sessions.c. > > Address the issues by moving the variable to struct tpm_chip. > > Cc: stable@xxxxxxxxxxxxxxx # v6.10+ > Fixes: 699e3efd6c64 ("tpm: Add HMAC session start and end functions") > Signed-off-by: Jarkko Sakkinen <jarkko@xxxxxxxxxx> > Dashes missing but I can fix that when I apply this. Just like to keep change log in git and I add the dashes before sending... > v3: > * Reset chip->handles in the beginning of tpm2_start_auth_session() > so that it shows correct value, when TCG_TPM2_HMAC is enabled but > tpm2_sessions_init() has never been called. > v2: > * Was a bit more broken than I first thought, as 'handles' is only > useful for tpm2-sessions.c and has zero relation to tpm-buf.c. > --- BR, Jarkko