On Wed, Apr 17, 2019 at 06:24:20PM +0300, Jarkko Sakkinen wrote:
From: Yue Haibing <yuehaibing@xxxxxxxxxx> commit 32312418625764cdf740890ac9c78ca26a6a9d24 upstream calc_tpm2_event_size() has an invalid signature because it returns a 'size_t' where as its signature says that it returns 'int'. Cc: <stable@xxxxxxxxxxxxxxx> Fixes: 4d23cc323cdb ("tpm: add securityfs support for TPM 2.0 firmware event log") Suggested-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> Signed-off-by: Yue Haibing <yuehaibing@xxxxxxxxxx> Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx> --- backport v5.0.8 drivers/char/tpm/eventlog/tpm2.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/char/tpm/eventlog/tpm2.c b/drivers/char/tpm/eventlog/tpm2.c index 1b8fa9de2cac..130c3f227559 100644 --- a/drivers/char/tpm/eventlog/tpm2.c +++ b/drivers/char/tpm/eventlog/tpm2.c @@ -37,8 +37,8 @@ * * Returns size of the event. If it is an invalid event, returns 0. */ -static int calc_tpm2_event_size(struct tcg_pcr_event2 *event, - struct tcg_pcr_event *event_header) +static size_t calc_tpm2_event_size(struct tcg_pcr_event2_head *event, + struct tcg_pcr_event *event_header) { struct tcg_efi_specid_event *efispecid; struct tcg_event_field *event_field;
But it seems like it breaks the build: drivers/char/tpm/eventlog/tpm2.c:40:43: warning: ‘struct tcg_pcr_event2_head’ declared inside parameter list will not be visible outside of this definition or declaration static size_t calc_tpm2_event_size(struct tcg_pcr_event2_head *event, ^~~~~~~~~~~~~~~~~~~ drivers/char/tpm/eventlog/tpm2.c: In function ‘calc_tpm2_event_size’: drivers/char/tpm/eventlog/tpm2.c:55:32: error: dereferencing pointer to incomplete type ‘struct tcg_pcr_event2_head’ marker = marker + sizeof(event->pcr_idx) + sizeof(event->event_type) Probably because c8faabfc6f480 is missing. I've reverted this patch from stable for now. -- Thanks, Sasha