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.

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

Reply via email to