From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49243) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UnWMV-00036j-2r for qemu-devel@nongnu.org; Fri, 14 Jun 2013 11:56:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UnWMS-0002aQ-KG for qemu-devel@nongnu.org; Fri, 14 Jun 2013 11:56:27 -0400 Received: from e7.ny.us.ibm.com ([32.97.182.137]:36239) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UnWMS-0002aL-GO for qemu-devel@nongnu.org; Fri, 14 Jun 2013 11:56:24 -0400 Received: from /spool/local by e7.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 14 Jun 2013 11:56:23 -0400 Received: from d01relay03.pok.ibm.com (d01relay03.pok.ibm.com [9.56.227.235]) by d01dlp01.pok.ibm.com (Postfix) with ESMTP id 2D9E138C801A for ; Fri, 14 Jun 2013 11:56:21 -0400 (EDT) Received: from d01av02.pok.ibm.com (d01av02.pok.ibm.com [9.56.224.216]) by d01relay03.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r5EFuLZf277564 for ; Fri, 14 Jun 2013 11:56:21 -0400 Received: from d01av02.pok.ibm.com (loopback [127.0.0.1]) by d01av02.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id r5EFuLn8025498 for ; Fri, 14 Jun 2013 12:56:21 -0300 From: Anthony Liguori In-Reply-To: <51BB3BF6.3010107@linux.vnet.ibm.com> References: <1370525564-16912-1-git-send-email-coreyb@linux.vnet.ibm.com> <8738skg59o.fsf@codemonkey.ws> <51BB3127.7040708@linux.vnet.ibm.com> <87hah03do2.fsf@codemonkey.ws> <51BB3BF6.3010107@linux.vnet.ibm.com> Date: Fri, 14 Jun 2013 10:56:16 -0500 Message-ID: <87ip1git3z.fsf@codemonkey.ws> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: Re: [Qemu-devel] [PATCH v3 0/3] TPM NVRAM persistent storage List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Corey Bryant Cc: kwolf@redhat.com, stefanb@linux.vnet.ibm.com, qemu-devel@nongnu.org, mdroth@linux.vnet.ibm.com, jschopp@linux.vnet.ibm.com, stefanha@redhat.com Corey Bryant writes: > On 06/14/2013 11:38 AM, Anthony Liguori wrote: >> Corey Bryant writes: >> >>> On 06/14/2013 10:01 AM, Anthony Liguori wrote: >>>> Corey Bryant writes: >>>> >>>>> This patch series provides persistent storage support that a TPM >>>>> can use to store NVRAM data. It uses QEMU's block driver to store >>>>> data on a drive image. The libtpms TPM 1.2 backend will be the >>>>> initial user of this functionality to store data that must persist >>>>> through a reboot or migration. A sample command line may look like >>>>> this: >>>> >>>> This should be folded into the libtpms backend series. >>>> >>>> There are no users for this so this would just be untestable code in the >>>> tree subject to bitrot. >>>> >>>> Regards, >>>> >>>> Anthony Liguori >>>> >>> >>> Fair enough. I assume you're ok with this code though? >> >> I don't understand why it's needed to be honest. I suspect this has to >> do with the fact that the libtpms implementation will need significant >> reworking. >> >> Regards, >> >> Anthony Liguori >> > > In regards to why it is needed.. The QEMU software-emulated vTPM > backend will pass callback functions to libtpms for writing/reading > nvram data. Those callbacks will use the code in this patch series to > do the writing/reading of nvram data to/from image files so that the > data persists through migration/reboot. > > I'm not sure I completely understand your second sentence, but yes the > software-emulated vTPM backend code for QEMU will certainly need rework > to use the code in this patch series. I think it's easiest to discuss this in the context of the actual patch series. Regards, Anthony Liguori > > -- > Regards, > Corey Bryant > >>> >>> -- >>> Regards, >>> Corey Bryant >>> >>>>> >>>>> qemu-system-x86_64 ... >>>>> -drive file=/path/to/nvram.qcow2,id=drive-nvram0-0-0 >>>>> -tpmdev libtpms,id=tpm-tpm0 >>>>> -device tpm-tis,tpmdev=tpm-tpm0,id=tpm0,drive=drive-nvram0-0-0 >>>>> >>>>> Thanks, >>>>> Corey >>>>> >>>>> Corey Bryant (3): >>>>> nvram: Add TPM NVRAM implementation >>>>> nvram: Add tpm-tis drive support >>>>> TPM NVRAM test >>>>> >>>>> hw/tpm/Makefile.objs | 1 + >>>>> hw/tpm/tpm_int.h | 2 + >>>>> hw/tpm/tpm_nvram.c | 324 ++++++++++++++++++++++++++++++++++++++++++++++ >>>>> hw/tpm/tpm_nvram.h | 25 ++++ >>>>> hw/tpm/tpm_passthrough.c | 85 ++++++++++++ >>>>> hw/tpm/tpm_tis.c | 8 + >>>>> 6 files changed, 445 insertions(+), 0 deletions(-) >>>>> create mode 100644 hw/tpm/tpm_nvram.c >>>>> create mode 100644 hw/tpm/tpm_nvram.h >>>> >>>> >>>> >>>> >> >> >>