Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751463AbdIOMlG (ORCPT ); Fri, 15 Sep 2017 08:41:06 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:37622 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751323AbdIOMlE (ORCPT ); Fri, 15 Sep 2017 08:41:04 -0400 Subject: Re: [PATCH v2 3/4] tpm: reduce tpm_msleep() time in get_burstcount() To: Jarkko Sakkinen Cc: tpmdd-devel@lists.sourceforge.net, peterhuewe@gmx.de, tpmdd@selhorst.net, jgunthorpe@obsidianresearch.com, linux-security-module@vger.kernel.org, linux-kernel@vger.kernel.org, linux-ima-devel@lists.sourceforge.net, patrickc@us.ibm.com References: <20170906125643.5070-1-nayna@linux.vnet.ibm.com> <20170906125643.5070-4-nayna@linux.vnet.ibm.com> <20170913010011.myvhrj2f4i3piphl@linux.intel.com> From: Nayna Jain Date: Fri, 15 Sep 2017 18:10:49 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <20170913010011.myvhrj2f4i3piphl@linux.intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-TM-AS-GCONF: 00 x-cbid: 17091512-0020-0000-0000-00000CB6D7B7 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00007742; HX=3.00000241; KW=3.00000007; PH=3.00000004; SC=3.00000228; SDB=6.00917376; UDB=6.00460761; IPR=6.00697604; BA=6.00005589; NDR=6.00000001; ZLA=6.00000005; ZF=6.00000009; ZB=6.00000000; ZP=6.00000000; ZH=6.00000000; ZU=6.00000002; MB=3.00017167; XFM=3.00000015; UTC=2017-09-15 12:41:00 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 17091512-0021-0000-0000-00005E242F0D Message-Id: <32b07575-a895-fe45-eba3-15e47adfbcac@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2017-09-15_05:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1707230000 definitions=main-1709150184 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1578 Lines: 48 On 09/13/2017 06:30 AM, Jarkko Sakkinen wrote: > On Wed, Sep 06, 2017 at 08:56:38AM -0400, Nayna Jain wrote: >> Currently, get_burstcount() function sleeps for 5msec in a loop >> before retrying for next query to burstcount. However, if it takes >> lesser time for TPM to return, this 5 msec delay is longer >> than necessary. >> >> This patch replaces the tpm_msleep time from 5msec to 1msec. >> >> After this change, performance on a TPM 1.2 with an 8 byte >> burstcount for 1000 extends improved from ~10sec to ~9sec. >> >> Signed-off-by: Nayna Jain >> Acked-by: Mimi Zohar >> --- >> drivers/char/tpm/tpm_tis_core.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c >> index d1eab29cb447..d710bbc4608b 100644 >> --- a/drivers/char/tpm/tpm_tis_core.c >> +++ b/drivers/char/tpm/tpm_tis_core.c >> @@ -169,7 +169,7 @@ static int get_burstcount(struct tpm_chip *chip) >> burstcnt = (value >> 8) & 0xFFFF; >> if (burstcnt) >> return burstcnt; >> - tpm_msleep(TPM_TIMEOUT); >> + tpm_msleep(1); >> } while (time_before(jiffies, stop)); >> return -EBUSY; >> } >> -- >> 2.13.3 > How did you pick 1 ms delay? Should there be a constant defining it? As per ddwg input, the command may not take more than a few microseconds. The minimum tpm_msleep() value is 1 msec, so we really don't have a choice.  (We're working on a patch set to lower this value even more.) Thanks & Regards, - Nayna > > /Jarkko >