Message ID | 20180402162006.5030-1-nayna@linux.vnet.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Apr 02, 2018 at 09:50:06PM +0530, Nayna Jain wrote: > Commit e2fb992d82c6 ("tpm: add retry logic") introduced a new loop to > handle the TPM2_RC_RETRY error. The loop retries the command after > sleeping for the specified time, which is incremented exponentially in > every iteration. This patch fixes the initial sleep to be the default > sleep time. I think I understand the code change but do not understand what the long description. > > Fixes: commit e2fb992d82c6 ("tpm: add retry logic") > Signed-off-by: Nayna Jain <nayna@linux.vnet.ibm.com> > Reviewed-by: Mimi Zohar <zohar@linux.vnet.ibm.com> > --- > drivers/char/tpm/tpm-interface.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c > index c43a9e28995e..6201aab374e6 100644 > --- a/drivers/char/tpm/tpm-interface.c > +++ b/drivers/char/tpm/tpm-interface.c > @@ -587,7 +587,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, struct tpm_space *space, > */ > if (rc == TPM2_RC_TESTING && cc == TPM2_CC_SELF_TEST) > break; > - delay_msec *= 2; > + Extra whitespace > if (delay_msec > TPM2_DURATION_LONG) { > if (rc == TPM2_RC_RETRY) > dev_err(&chip->dev, "in retry loop\n"); > @@ -597,6 +597,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, struct tpm_space *space, > break; > } > tpm_msleep(delay_msec); > + delay_msec *= 2; > memcpy(buf, save, save_size); > } > return ret; > -- > 2.13.6 > /Jarkko -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 04/05/2018 03:42 PM, Jarkko Sakkinen wrote: > On Mon, Apr 02, 2018 at 09:50:06PM +0530, Nayna Jain wrote: >> Commit e2fb992d82c6 ("tpm: add retry logic") introduced a new loop to >> handle the TPM2_RC_RETRY error. The loop retries the command after >> sleeping for the specified time, which is incremented exponentially in >> every iteration. This patch fixes the initial sleep to be the default >> sleep time. > I think I understand the code change but do not understand what the > long description. It tells that the first sleep is delay_msec * 2 and not delay_msec. > >> Fixes: commit e2fb992d82c6 ("tpm: add retry logic") >> Signed-off-by: Nayna Jain <nayna@linux.vnet.ibm.com> >> Reviewed-by: Mimi Zohar <zohar@linux.vnet.ibm.com> >> --- >> drivers/char/tpm/tpm-interface.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c >> index c43a9e28995e..6201aab374e6 100644 >> --- a/drivers/char/tpm/tpm-interface.c >> +++ b/drivers/char/tpm/tpm-interface.c >> @@ -587,7 +587,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, struct tpm_space *space, >> */ >> if (rc == TPM2_RC_TESTING && cc == TPM2_CC_SELF_TEST) >> break; >> - delay_msec *= 2; >> + > Extra whitespace I left just for clarity, but if not needed then I can remove it. Thanks & Regards, - Nayna > >> if (delay_msec > TPM2_DURATION_LONG) { >> if (rc == TPM2_RC_RETRY) >> dev_err(&chip->dev, "in retry loop\n"); >> @@ -597,6 +597,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, struct tpm_space *space, >> break; >> } >> tpm_msleep(delay_msec); >> + delay_msec *= 2; >> memcpy(buf, save, save_size); >> } >> return ret; >> -- >> 2.13.6 >> > /Jarkko > -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Apr 06, 2018 at 02:03:37PM +0530, Nayna Jain wrote: > On 04/05/2018 03:42 PM, Jarkko Sakkinen wrote: > > On Mon, Apr 02, 2018 at 09:50:06PM +0530, Nayna Jain wrote: > > > Commit e2fb992d82c6 ("tpm: add retry logic") introduced a new loop to > > > handle the TPM2_RC_RETRY error. The loop retries the command after > > > sleeping for the specified time, which is incremented exponentially in > > > every iteration. This patch fixes the initial sleep to be the default > > > sleep time. > > I think I understand the code change but do not understand what the > > long description. > > It tells that the first sleep is delay_msec * 2 and not delay_msec. So the problem is that the loop doubles the time before sleeping for the first time. This is missing from the description. Please refine it in some way. /Jarkko -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, 2018-04-07 at 13:36 +0300, Jarkko Sakkinen wrote: > On Fri, Apr 06, 2018 at 02:03:37PM +0530, Nayna Jain wrote: > > On 04/05/2018 03:42 PM, Jarkko Sakkinen wrote: > > > On Mon, Apr 02, 2018 at 09:50:06PM +0530, Nayna Jain wrote: > > > > Commit e2fb992d82c6 ("tpm: add retry logic") introduced a new loop to > > > > handle the TPM2_RC_RETRY error. The loop retries the command after > > > > sleeping for the specified time, which is incremented exponentially in > > > > every iteration. This patch fixes the initial sleep to be the default > > > > sleep time. > > > I think I understand the code change but do not understand what the > > > long description. > > > > It tells that the first sleep is delay_msec * 2 and not delay_msec. > > So the problem is that the loop doubles the time before sleeping > for the first time. This is missing from the description. Please > refine it in some way. Sure, how about replacing the last line of the patch description with: Unfortunately, the loop doubles the time before sleeping, causing the initial sleep to be doubled. This patch fixes the initial sleep time. If this change is acceptable, do you want to make the change or should Nayna repost the patch? thanks, Mimi -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 2018-04-09 at 10:29 -0400, Mimi Zohar wrote: > On Sat, 2018-04-07 at 13:36 +0300, Jarkko Sakkinen wrote: > > On Fri, Apr 06, 2018 at 02:03:37PM +0530, Nayna Jain wrote: > > > On 04/05/2018 03:42 PM, Jarkko Sakkinen wrote: > > > > On Mon, Apr 02, 2018 at 09:50:06PM +0530, Nayna Jain wrote: > > > > > Commit e2fb992d82c6 ("tpm: add retry logic") introduced a new loop to > > > > > handle the TPM2_RC_RETRY error. The loop retries the command after > > > > > sleeping for the specified time, which is incremented exponentially in > > > > > every iteration. This patch fixes the initial sleep to be the default > > > > > sleep time. > > > > > > > > I think I understand the code change but do not understand what the > > > > long description. > > > > > > It tells that the first sleep is delay_msec * 2 and not delay_msec. > > > > So the problem is that the loop doubles the time before sleeping > > for the first time. This is missing from the description. Please > > refine it in some way. > > Sure, how about replacing the last line of the patch description with: > Unfortunately, the loop doubles the time before sleeping, causing the > initial sleep to be doubled. This patch fixes the initial sleep time. > > If this change is acceptable, do you want to make the change or should Nayna > repost the patch? No need. I'll move on to testing. /Jarkko -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Apr 10, 2018 at 03:31:09PM +0300, Jarkko Sakkinen wrote: > On Mon, 2018-04-09 at 10:29 -0400, Mimi Zohar wrote: > > If this change is acceptable, do you want to make the change or should Nayna > > repost the patch? > > No need. I'll move on to testing. Tested-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> /Jarkko -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c index c43a9e28995e..6201aab374e6 100644 --- a/drivers/char/tpm/tpm-interface.c +++ b/drivers/char/tpm/tpm-interface.c @@ -587,7 +587,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, struct tpm_space *space, */ if (rc == TPM2_RC_TESTING && cc == TPM2_CC_SELF_TEST) break; - delay_msec *= 2; + if (delay_msec > TPM2_DURATION_LONG) { if (rc == TPM2_RC_RETRY) dev_err(&chip->dev, "in retry loop\n"); @@ -597,6 +597,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, struct tpm_space *space, break; } tpm_msleep(delay_msec); + delay_msec *= 2; memcpy(buf, save, save_size); } return ret;