All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Berger <stefanb@linux.vnet.ibm.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: qemu-devel@nongnu.org, Andreas Niederl <andreas.niederl@iaik.tugraz.at>
Subject: Re: [Qemu-devel] [PATCH V14 2/7] Add TPM (frontend) hardware interface (TPM TIS) to Qemu
Date: Tue, 21 Feb 2012 19:21:28 -0500	[thread overview]
Message-ID: <4F443508.8070408@linux.vnet.ibm.com> (raw)
In-Reply-To: <20120221230845.GD9062@redhat.com>

On 02/21/2012 06:08 PM, Michael S. Tsirkin wrote:
> On Tue, Feb 21, 2012 at 05:30:32PM -0500, Stefan Berger wrote:
>
>
>> At the moment there are two backends that need threading: the
>> libtpms and passthrough backends. Both will require locking of
>> datastructures that belong to the frontend. Only the null driver
>> doesn't need a thread and the main thread can call into the backend,
>> create the response and call via callback into the frontend to
>> deliver the repsonse. If structures are protected via mutxes then
>> only the NULL driver (which we don't want anyway) may end up
>> grabbing mutexes that really aren't necessary while the two other
>> backends need them. I don't see the mitextes as problematic. The
>> frontend at least protects its data structures for the callbacks and
>> other API calls it offers and they simply are thread-safe.
>>
>>      Stefan
> Worst case, you can take a qemu mutex. Is tpm very
> performance-sensitive to make contention on that
> lock a problem?
>
We have to lock a common data structure 'somehow'. I don't see a way 
around it. The locking times are short since no major computations are 
done while the lock is held.
Considering that the TPM TIS interface is a non-DMA, byte-by-byte 
send/receive interface, the performance problems, if at all a problem, 
are to be found somewhere else : VMExits for example; if interface is 
used in polling mode, then the interval between polls.

    Stefan

  reply	other threads:[~2012-02-22  0:21 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-14 13:43 [Qemu-devel] [PATCH V14 0/7] Qemu Trusted Platform Module (TPM) integration Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 1/7] Support for TPM command line options Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 2/7] Add TPM (frontend) hardware interface (TPM TIS) to Qemu Stefan Berger
2012-02-20  8:51   ` Michael S. Tsirkin
2012-02-20 15:48     ` Stefan Berger
2012-02-20 19:37       ` Michael S. Tsirkin
2012-02-20 19:58         ` Stefan Berger
2012-02-23 20:47       ` Stefan Berger
2012-02-20 22:02   ` Michael S. Tsirkin
2012-02-21  0:43     ` Stefan Berger
2012-02-21  3:18       ` Michael S. Tsirkin
2012-02-21 11:19         ` Stefan Berger
2012-02-21 12:18           ` Michael S. Tsirkin
2012-02-21 15:05             ` Stefan Berger
2012-02-21 19:58               ` Michael S. Tsirkin
2012-02-21 22:30                 ` Stefan Berger
2012-02-21 23:08                   ` Michael S. Tsirkin
2012-02-22  0:21                     ` Stefan Berger [this message]
2012-02-22  4:34                       ` Michael S. Tsirkin
2012-02-22 15:03                         ` Stefan Berger
2012-02-22 17:55                     ` Stefan Berger
2012-03-02 12:02                     ` Stefan Berger
2012-03-04 22:59                       ` Michael S. Tsirkin
2012-03-05 15:44                         ` Stefan Berger
2012-03-05 15:46                         ` Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 3/7] Add a debug register Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 4/7] Build the TPM frontend code Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 5/7] Add a TPM Passthrough backend driver implementation Stefan Berger
2012-02-20 19:51   ` Michael S. Tsirkin
2012-02-20 20:25     ` Stefan Berger
2012-02-20 21:15       ` Michael S. Tsirkin
2012-02-21  1:03         ` Stefan Berger
2012-03-21 23:27           ` Anthony Liguori
2012-02-20 20:01   ` Michael S. Tsirkin
2012-02-20 21:12     ` Stefan Berger
2012-02-20 21:30   ` Michael S. Tsirkin
2012-02-21  0:30     ` Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 6/7] Introduce --enable-tpm-passthrough configure option Stefan Berger
2011-12-14 13:43 ` [Qemu-devel] [PATCH V14 7/7] Add fd parameter for TPM passthrough driver Stefan Berger
2012-01-12 16:59 ` [Qemu-devel] [PATCH V14 0/7] Qemu Trusted Platform Module (TPM) integration Paul Moore
2012-01-16 19:21   ` Paul Moore

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=4F443508.8070408@linux.vnet.ibm.com \
    --to=stefanb@linux.vnet.ibm.com \
    --cc=andreas.niederl@iaik.tugraz.at \
    --cc=mst@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /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.