Yes, it seems that is the case and we were totally unable to use tboot on our 
HP systems. Christian’s patch at least got things working and it is possible 
there are other systems out there that have the same problem. If you have 
another solution in mind that is fine (perhaps making it configurable) but 
there should be a way for folks to work around problems in the TPM hardware 
like this.

Thanks
Ross

From: Wang, Shane [mailto:shane.w...@intel.com]
Sent: Monday, February 01, 2010 6:33 AM
To: Ross Philipson; tboot-devel@lists.sourceforge.net
Cc: Christian Limpach
Subject: RE: [tboot-devel] [PATCH] Fix timeout bug introduced by tboot.hg 
changeset 176.

Hi, Ross and Christian,

According to TCG PC Client Sepcific TPM Interface Specification (TIS), calling 
the TPM_GetCapability command with the capability TPM_CAP_PROP_TIS_TIMEOUTS 
return an array of uint32 values each representing the number of microseconds 
for the associated timeout. And the structure we used represents the number of 
milliseconds. I also tested the code with some TPMs. I guess maybe your hp6930p 
doesn't conform to the spec.

Thanks.
Shane

________________________________
From: Ross Philipson [mailto:ross.philip...@citrix.com]
Sent: 2010年1月29日 18:45
To: tboot-devel@lists.sourceforge.net
Cc: Christian Limpach
Subject: [tboot-devel] [PATCH] Fix timeout bug introduced by tboot.hg changeset 
176.

Patch to fix timeout bug introduced by tboot.hg changeset 176. Either the TPM 
in the hp6930p doesn't operate to spec or the code was never tested.  With the 
patch, the values read from the tpm are equal to the default values used before 
tpm timeout code was added in changesets 163 and 176.

Signed-off-by: Christian Limpach 
christian.limp...@eu.citrix.com<mailto:christian.limp...@eu.citrix.com>
Acked-by: Ross Philipson 
ross.philip...@citrix.com<mailto:ross.philip...@citrix.com>


diff -r 75e242a56344 tboot/common/tpm.c
--- a/tboot/common/tpm.c      Tue Jan 05 23:05:07 2010 -0800
+++ b/tboot/common/tpm.c      Fri Jan 29 00:59:05 2010 +0000
@@ -1944,10 +1944,10 @@
          * timeout_x represents the number of milliseconds for the timeout
          * and timeout[x] represents the number of microseconds.
          */
-        g_timeout.timeout_a = timeout[0]/1000;
-        g_timeout.timeout_b = timeout[1]/1000;
-        g_timeout.timeout_c = timeout[2]/1000;
-        g_timeout.timeout_d = timeout[3]/1000;
+        g_timeout.timeout_a = timeout[0];
+        g_timeout.timeout_b = timeout[1];
+        g_timeout.timeout_c = timeout[2];
+        g_timeout.timeout_d = timeout[3];
         printk("TPM timeout values: A: %u, B: %u, C: %u, D: %u\n",
                g_timeout.timeout_a, g_timeout.timeout_b, g_timeout.timeout_c,
                g_timeout.timeout_d);

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
tboot-devel mailing list
tboot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tboot-devel

Reply via email to