On Sun, Jan 28, 2018 at 09:17:53PM +0000, Winkler, Tomas wrote: > > > > > On Sun, Jan 28, 2018 at 09:51:00AM +0200, Tomas Winkler wrote: > > > > > diff --git a/include/linux/tpm.h b/include/linux/tpm.h index > > > bcdd3790e94d..06639fb6ab85 100644 > > > +++ b/include/linux/tpm.h > > > @@ -44,7 +44,7 @@ struct tpm_class_ops { > > > bool (*update_timeouts)(struct tpm_chip *chip, > > > unsigned long *timeout_cap); > > > int (*request_locality)(struct tpm_chip *chip, int loc); > > > - void (*relinquish_locality)(struct tpm_chip *chip, int loc); > > > + int (*relinquish_locality)(struct tpm_chip *chip, int loc); > > > > This seems wrong.. What is the core code supposed to do if relinquish fails? > > Not much just propage the error to the caller and leave the policy > decision to it. Your patch set must either cover this or keep it as void. A better idea is to print an error to klog. /Jarkko