> > On Sun, 2018-02-25 at 14:00 +0200, Tomas Winkler wrote: > > if (need_locality && chip->ops->relinquish_locality) { > > - chip->ops->relinquish_locality(chip, chip->locality); > > + /* this coud be on error path, don't override error code */ > > + int l_rc = chip->ops->relinquish_locality(chip, chip- > > >locality); > > + > > + if (l_rc) > > + dev_err(&chip->dev, "%s: relinquish_locality: error > > %d\n", > > + __func__, l_rc); > > + > > chip->locality = -1; > > } > > The 'l_rc' declaration causes NAK as I've stated before. I will provide a sixth version that let us both down the tree > > Why don't you just make a helper function: > > static void tpm_relinquish_locality(struct tpm_chip *chip) { > int rc; > > if (!chip->ops->relinquish_locality) > return 0; > > rc = chip->ops->relinquish_locality(chip); > if (rc) > dev_err(&chip->dev, "%s: error %d\n", __func__, rc); > > chip->locality = -1; > } > > Then the original code would be simply: > > if (need_locality) > tpm_relinquish_locality(chip); > > /Jarkko