lkml.org 
[lkml]   [2017]   [Oct]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3 3/5] tpm: reduce polling delay in tpm_tis wait_for_tpm_stat()
    On Wed, Oct 04, 2017 at 06:29:22AM -0400, Nayna Jain wrote:
    > The existing wait_for_tpm_stat() polls for the chip status after
    > 5msec sleep. As per TCG ddwg input, it is expected that tpm might
    > return status in few usec. So, reducing the delay in polling to
    > 1msec.
    >
    > After this change, performance on a TPM 1.2 with an 8 byte
    > burstcount for 1000 extends improved from ~14sec to ~10sec.
    >
    > Signed-off-by: Nayna Jain <nayna@linux.vnet.ibm.com>
    > ---
    > drivers/char/tpm/tpm_tis_core.c | 4 +++-
    > 1 file changed, 3 insertions(+), 1 deletion(-)
    >
    > diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
    > index 8da425e1783f..224842e06105 100644
    > --- a/drivers/char/tpm/tpm_tis_core.c
    > +++ b/drivers/char/tpm/tpm_tis_core.c
    > @@ -31,6 +31,8 @@
    > #include "tpm.h"
    > #include "tpm_tis_core.h"
    >
    > +#define TPM_POLL_SLEEP 1

    Should have a comment above that explains the choice.

    > +
    > static bool wait_for_tpm_stat_cond(struct tpm_chip *chip, u8 mask,
    > bool check_cancel, bool *canceled)
    > {
    > @@ -82,7 +84,7 @@ static int wait_for_tpm_stat(struct tpm_chip *chip, u8 mask,
    > }
    > } else {
    > do {
    > - tpm_msleep(TPM_TIMEOUT);
    > + tpm_msleep(TPM_POLL_SLEEP);
    > status = chip->ops->status(chip);
    > if ((status & mask) == mask)
    > return 0;
    > --
    > 2.13.3
    >

    /Jarkko

    \
     
     \ /
      Last update: 2017-10-12 13:18    [W:7.332 / U:0.112 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site