All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Jarkko Sakkinen" <jarkko@kernel.org>
To: "Vitor Soares" <ivitro@gmail.com>,
	"James Bottomley" <James.Bottomley@HansenPartnership.com>,
	<linux-integrity@vger.kernel.org>
Cc: <keyrings@vger.kernel.org>, "Peter Huewe" <peterhuewe@gmx.de>,
	"Jason Gunthorpe" <jgg@ziepe.ca>,
	"Mimi Zohar" <zohar@linux.ibm.com>,
	"David Howells" <dhowells@redhat.com>,
	"Paul Moore" <paul@paul-moore.com>,
	"James Morris" <jmorris@namei.org>,
	"Serge E. Hallyn" <serge@hallyn.com>,
	<linux-kernel@vger.kernel.org>,
	<linux-security-module@vger.kernel.org>
Subject: Re: [PATCH 1/3] tpm: Disable TCG_TPM2_HMAC by default
Date: Wed, 22 May 2024 15:01:00 +0300	[thread overview]
Message-ID: <D1G5O2Z86E4W.2DHG4QZE2W2JG@kernel.org> (raw)
In-Reply-To: <2dd8d49516ec9c7cb8c1182b5b8537b1e82d7067.camel@gmail.com>

On Wed May 22, 2024 at 11:18 AM EEST, Vitor Soares wrote:
> On Tue, 2024-05-21 at 08:33 -0400, James Bottomley wrote:
> > On Tue, 2024-05-21 at 10:10 +0300, Jarkko Sakkinen wrote:
> > > This benchmark could be done in user space using /dev/tpm0.
> > 
> > Let's actually try that.  If you have the ibmtss installed, the command
> > to time primary key generation from userspace on your tpm is
> > 
> > time tsscreateprimary -hi n -ecc nistp256
> > 
> > 
> > And just for chuckles and grins, try it in the owner hierarchy as well
> > (sometimes slow TPMs cache this)
> > 
> > time tsscreateprimary -hi o -ecc nistp256
> > 
> > And if you have tpm2 tools, the above commands should be:
> > 
> > time tpm2_createprimary -C n -G ecc256
> > time tpm2_createprimary -C o -G ecc256
> > 
> > James
> > 
> > 
>
> Testing on an arm64 platform I get the following results.

OK, appreciate these results. I try to get mine this week, if I can
allocate some bandwidth but latest early next week. The Intel CPU
I'll be testing is Intel Celeron J4025:

https://www.intel.com/content/www/us/en/products/sku/197307/intel-celeron-processor-j4025-4m-cache-up-to-2-90-ghz/specifications.html

So if things work reasonably fast with this, then I think we can
enable the feature at least on X86_64 by default, and make it
opt-in for other arch's.

I sent already this patch but holding with PR up until rc1 is
out so that there is some window to act:

https://lore.kernel.org/linux-integrity/20240521130921.15028-1-jarkko@kernel.org/

If I need to send an updated patch ("default X86_64") and rip
transcrip from below results.

But to do that correctly I'd need to know at least:

1. What is the aarch64 platform you are using?
2. What kind of TPM you are using and how is it connect?

Obviously if I make this decision, I'll put you as "Reported-by".

>
> hmac disabled:
>   time modprobe tpm_tis_spi
>   real    0m2.776s
>   user    0m0.006s
>   sys     0m0.015s
>
>   time tpm2_createprimary -C n -G ecc256
>   real    0m0.686s
>   user    0m0.044s
>   sys     0m0.025s
>
>   time tpm2_createprimary -C o -G ecc256
>   real    0m0.638s
>   user    0m0.048s
>   sys     0m0.009s
>
>
> hmac enabled:
>   time modprobe tpm_tis_spi
>   real    8m5.840s
>   user    0m0.005s
>   sys     0m0.018s
>
>
>   time tpm2_createprimary -C n -G ecc256
>   real    5m27.678s
>   user    0m0.059s
>   sys     0m0.009s
>
>   (after first command)
>   real    0m0.395s
>   user    0m0.040s
>   sys     0m0.015s
>
>   time tpm2_createprimary -C o -G ecc256
>   real    0m0.418s
>   user    0m0.049s
>   sys     0m0.009s
>
> hmac enabled + patches applied
>   time modprobe tpm_tis_spi
>   real    8m6.663s
>   user    0m0.000s
>   sys     0m0.021s
>
>
>   time tpm2_createprimary -C n -G ecc256
>   real    7m24.662s
>   user    0m0.048s
>   sys     0m0.022s
>
>   (after first command)
>   real    0m0.395s
>   user    0m0.047s
>   sys     0m0.009s
>
>   time tpm2_createprimary -C o -G ecc256
>   real    0m0.404s
>   user    0m0.046s
>   sys     0m0.012s
>
>
> Regards,
> Vitor Soares

BR, Jarkko

  reply	other threads:[~2024-05-22 12:01 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-19 23:51 [PATCH 0/3] KEYS: trusted: bug fixes Jarkko Sakkinen
2024-05-19 23:51 ` [PATCH 1/3] tpm: Disable TCG_TPM2_HMAC by default Jarkko Sakkinen
2024-05-21  7:03   ` Vitor Soares
2024-05-21  7:10     ` Jarkko Sakkinen
2024-05-21 12:33       ` James Bottomley
2024-05-21 13:00         ` Jarkko Sakkinen
2024-05-21 13:11           ` Jarkko Sakkinen
2024-05-21 13:16             ` Jarkko Sakkinen
2024-05-22  8:18         ` Vitor Soares
2024-05-22 12:01           ` Jarkko Sakkinen [this message]
2024-05-22 13:17             ` Vitor Soares
2024-05-22 13:31               ` Vitor Soares
2024-05-22 14:11               ` Jarkko Sakkinen
2024-05-22 14:20                 ` James Bottomley
2024-05-22 14:39                   ` Jarkko Sakkinen
2024-05-22 13:35           ` James Bottomley
2024-05-22 14:13             ` Jarkko Sakkinen
2024-05-22 14:58               ` Vitor Soares
2024-05-22 16:11                 ` Jarkko Sakkinen
2024-05-23  7:59                   ` Vitor Soares
2024-05-27 14:51                     ` Jarkko Sakkinen
2024-05-27 15:01                       ` Jarkko Sakkinen
2024-05-27 15:12                         ` Jarkko Sakkinen
2024-05-27 15:34                           ` Jarkko Sakkinen
2024-05-27 17:57                             ` James Bottomley
2024-05-27 19:53                               ` Jarkko Sakkinen
2024-05-27 20:01                                 ` Jarkko Sakkinen
2024-05-27 21:36                                 ` James Bottomley
2024-05-27 23:17                                   ` Jarkko Sakkinen
2024-05-27 23:44                                     ` James Bottomley
2024-05-28  1:04                                       ` Jarkko Sakkinen
2024-05-28  1:07                                         ` Jarkko Sakkinen
2024-05-19 23:51 ` [PATCH 2/3] KEYS: trusted: Fix memory leak in tpm2_key_encode() Jarkko Sakkinen
2024-05-19 23:51 ` [PATCH 3/3] KEYS: trusted: Do not use WARN when encode fails Jarkko Sakkinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=D1G5O2Z86E4W.2DHG4QZE2W2JG@kernel.org \
    --to=jarkko@kernel.org \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=dhowells@redhat.com \
    --cc=ivitro@gmail.com \
    --cc=jgg@ziepe.ca \
    --cc=jmorris@namei.org \
    --cc=keyrings@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=paul@paul-moore.com \
    --cc=peterhuewe@gmx.de \
    --cc=serge@hallyn.com \
    --cc=zohar@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.