mbox

[PULL,v1,0/5] Merge tpm 2018/10/29 v1

Message ID 20181029151956.2164336-1-stefanb@linux.ibm.com (mailing list archive)
State New, archived
Headers show

Pull-request

git://github.com/stefanberger/qemu-tpm.git tags/pull-tpm-2018-10-29-1

Message

Stefan Berger Oct. 29, 2018, 3:19 p.m. UTC
From: Stefan Berger <stefanb@linux.vnet.ibm.com>

This pull request fixes a couple of TPM support related issues,
such as full initialization of a variable to quiet down valgrind,
a possible race in the TPM related test cases and marking test
cases as skipped if swtpm was not found in PATH.

   Stefan

The following changes since commit a4d710251fa5aa9ec26de4626f11c78500195d12:

  Merge remote-tracking branch 'remotes/berrange/tags/qcrypto-next-pull-request' into staging (2018-10-24 22:08:42 +0100)

are available in the Git repository at:

  git://github.com/stefanberger/qemu-tpm.git tags/pull-tpm-2018-10-29-1

for you to fetch changes up to f9da599490730cf0c3016f15225d7f1ee15bec75:

  tpm: Zero-init structure to avoid uninitialized variables in valgrind log (2018-10-27 10:33:18 -0400)

----------------------------------------------------------------
Marc-André Lureau (2):
      tests/tpm: fix tpm_util_swtpm_has_tpm2()
      tests/tpm: mark swtpm test as skipped instead of successful

Stefan Berger (3):
      docs: tpm: Mention implemented TPM CRB interface emulation and specs
      MAINTAINERS: Change my email address to the new domain
      tpm: Zero-init structure to avoid uninitialized variables in valgrind log

 MAINTAINERS           |  2 +-
 docs/specs/tpm.txt    | 15 +++++++++++++++
 hw/tpm/tpm_emulator.c |  2 +-
 tests/tpm-tests.c     | 33 +++++++++++++++++++++------------
 tests/tpm-util.c      | 52 ++++++++++++++++++++--------------------------------
 tests/tpm-util.h      |  2 ++
 6 files changed, 60 insertions(+), 46 deletions(-)

Comments

Peter Maydell Oct. 30, 2018, 10:44 a.m. UTC | #1
On 29 October 2018 at 15:19, Stefan Berger <stefanb@linux.ibm.com> wrote:
> From: Stefan Berger <stefanb@linux.vnet.ibm.com>
>
> This pull request fixes a couple of TPM support related issues,
> such as full initialization of a variable to quiet down valgrind,
> a possible race in the TPM related test cases and marking test
> cases as skipped if swtpm was not found in PATH.
>
>    Stefan
>
> The following changes since commit a4d710251fa5aa9ec26de4626f11c78500195d12:
>
>   Merge remote-tracking branch 'remotes/berrange/tags/qcrypto-next-pull-request' into staging (2018-10-24 22:08:42 +0100)
>
> are available in the Git repository at:
>
>   git://github.com/stefanberger/qemu-tpm.git tags/pull-tpm-2018-10-29-1
>
> for you to fetch changes up to f9da599490730cf0c3016f15225d7f1ee15bec75:
>
>   tpm: Zero-init structure to avoid uninitialized variables in valgrind log (2018-10-27 10:33:18 -0400)
>
> ----------------------------------------------------------------
> Marc-André Lureau (2):
>       tests/tpm: fix tpm_util_swtpm_has_tpm2()
>       tests/tpm: mark swtpm test as skipped instead of successful
>
> Stefan Berger (3):
>       docs: tpm: Mention implemented TPM CRB interface emulation and specs
>       MAINTAINERS: Change my email address to the new domain
>       tpm: Zero-init structure to avoid uninitialized variables in valgrind log

Hi; this gives some test failures (all hosts):

TEST: tests/tpm-crb-swtpm-test... (pid=305)
  /i386/tpm/crb-swtpm/test:                                            FAIL
GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
  /i386/tpm/crb-swtpm-migration/test:                                  FAIL
GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
FAIL: tests/tpm-crb-swtpm-test
TEST: tests/tpm-crb-test... (pid=311)
  /i386/tpm-crb/test:                                                  OK
PASS: tests/tpm-crb-test
TEST: tests/tpm-tis-swtpm-test... (pid=324)
  /i386/tpm/tis-swtpm/test:                                            FAIL
GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
  /i386/tpm/tis-swtpm-migration/test:                                  FAIL
GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
FAIL: tests/tpm-tis-swtpm-test
TEST: tests/tpm-tis-test... (pid=331)
  /i386/tpm-tis/test_check_localities:                                 OK
  /i386/tpm-tis/test_check_access_reg:                                 OK
  /i386/tpm-tis/test_check_access_reg_seize:                           OK
  /i386/tpm-tis/test_check_access_reg_release:                         OK
  /i386/tpm-tis/test_check_transmit:                                   OK
PASS: tests/tpm-tis-test

and a compile failure on OSX:
/Users/pm215/src/qemu-for-merges/hw/tpm/tpm_emulator.c:161:21: error:
suggest braces around initialization of subobject
[-Werror,-Wmissing-braces]
    ptm_loc loc = { 0 };
                    ^
                    {}

(what you want here is just "ptm_loc loc = {};" -- the "{ 0 }" syntax
is the C standard one but not all compilers can handle it without warnings
if the first member in the struct happens to be a substruct.)

thanks
-- PMM
Marc-André Lureau Oct. 30, 2018, 11:14 a.m. UTC | #2
Hi Peter

On Tue, Oct 30, 2018 at 2:45 PM Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On 29 October 2018 at 15:19, Stefan Berger <stefanb@linux.ibm.com> wrote:
> > From: Stefan Berger <stefanb@linux.vnet.ibm.com>
> >
> > This pull request fixes a couple of TPM support related issues,
> > such as full initialization of a variable to quiet down valgrind,
> > a possible race in the TPM related test cases and marking test
> > cases as skipped if swtpm was not found in PATH.
> >
> >    Stefan
> >
> > The following changes since commit a4d710251fa5aa9ec26de4626f11c78500195d12:
> >
> >   Merge remote-tracking branch 'remotes/berrange/tags/qcrypto-next-pull-request' into staging (2018-10-24 22:08:42 +0100)
> >
> > are available in the Git repository at:
> >
> >   git://github.com/stefanberger/qemu-tpm.git tags/pull-tpm-2018-10-29-1
> >
> > for you to fetch changes up to f9da599490730cf0c3016f15225d7f1ee15bec75:
> >
> >   tpm: Zero-init structure to avoid uninitialized variables in valgrind log (2018-10-27 10:33:18 -0400)
> >
> > ----------------------------------------------------------------
> > Marc-André Lureau (2):
> >       tests/tpm: fix tpm_util_swtpm_has_tpm2()
> >       tests/tpm: mark swtpm test as skipped instead of successful
> >
> > Stefan Berger (3):
> >       docs: tpm: Mention implemented TPM CRB interface emulation and specs
> >       MAINTAINERS: Change my email address to the new domain
> >       tpm: Zero-init structure to avoid uninitialized variables in valgrind log
>
> Hi; this gives some test failures (all hosts):
>
> TEST: tests/tpm-crb-swtpm-test... (pid=305)
>   /i386/tpm/crb-swtpm/test:                                            FAIL
> GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
>   /i386/tpm/crb-swtpm-migration/test:                                  FAIL
> GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
> FAIL: tests/tpm-crb-swtpm-test
> TEST: tests/tpm-crb-test... (pid=311)
>   /i386/tpm-crb/test:                                                  OK
> PASS: tests/tpm-crb-test
> TEST: tests/tpm-tis-swtpm-test... (pid=324)
>   /i386/tpm/tis-swtpm/test:                                            FAIL
> GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
>   /i386/tpm/tis-swtpm-migration/test:                                  FAIL
> GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
> FAIL: tests/tpm-tis-swtpm-test
> TEST: tests/tpm-tis-test... (pid=331)
>   /i386/tpm-tis/test_check_localities:                                 OK
>   /i386/tpm-tis/test_check_access_reg:                                 OK
>   /i386/tpm-tis/test_check_access_reg_seize:                           OK
>   /i386/tpm-tis/test_check_access_reg_release:                         OK
>   /i386/tpm-tis/test_check_transmit:                                   OK
> PASS: tests/tpm-tis-test
>

What version of swtpm & libtpms is installed?

thanks

> and a compile failure on OSX:
> /Users/pm215/src/qemu-for-merges/hw/tpm/tpm_emulator.c:161:21: error:
> suggest braces around initialization of subobject
> [-Werror,-Wmissing-braces]
>     ptm_loc loc = { 0 };
>                     ^
>                     {}
>
> (what you want here is just "ptm_loc loc = {};" -- the "{ 0 }" syntax
> is the C standard one but not all compilers can handle it without warnings
> if the first member in the struct happens to be a substruct.)
>
> thanks
> -- PMM
>
Peter Maydell Oct. 30, 2018, 11:26 a.m. UTC | #3
On 30 October 2018 at 11:14, Marc-André Lureau
<marcandre.lureau@gmail.com> wrote:
> Hi Peter
>
> On Tue, Oct 30, 2018 at 2:45 PM Peter Maydell <peter.maydell@linaro.org> wrote:
>> Hi; this gives some test failures (all hosts):
>>
>> TEST: tests/tpm-crb-swtpm-test... (pid=305)
>>   /i386/tpm/crb-swtpm/test:                                            FAIL
>> GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
>>   /i386/tpm/crb-swtpm-migration/test:                                  FAIL
>> GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
>> FAIL: tests/tpm-crb-swtpm-test
>> TEST: tests/tpm-crb-test... (pid=311)
>>   /i386/tpm-crb/test:                                                  OK
>> PASS: tests/tpm-crb-test
>> TEST: tests/tpm-tis-swtpm-test... (pid=324)
>>   /i386/tpm/tis-swtpm/test:                                            FAIL
>> GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
>>   /i386/tpm/tis-swtpm-migration/test:                                  FAIL
>> GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
>> FAIL: tests/tpm-tis-swtpm-test
>> TEST: tests/tpm-tis-test... (pid=331)
>>   /i386/tpm-tis/test_check_localities:                                 OK
>>   /i386/tpm-tis/test_check_access_reg:                                 OK
>>   /i386/tpm-tis/test_check_access_reg_seize:                           OK
>>   /i386/tpm-tis/test_check_access_reg_release:                         OK
>>   /i386/tpm-tis/test_check_transmit:                                   OK
>> PASS: tests/tpm-tis-test
>>
>
> What version of swtpm & libtpms is installed?

No idea, how do I tell? On my x86 Ubuntu machine which is one of those
which failed there are no packages whose name includes either "swtpm"
or "tpms".

thanks
-- PMM
Stefan Berger Oct. 30, 2018, 12:49 p.m. UTC | #4
On 10/30/18 7:26 AM, Peter Maydell wrote:
> On 30 October 2018 at 11:14, Marc-André Lureau
> <marcandre.lureau@gmail.com> wrote:
>> Hi Peter
>>
>> On Tue, Oct 30, 2018 at 2:45 PM Peter Maydell <peter.maydell@linaro.org> wrote:
>>> Hi; this gives some test failures (all hosts):
>>>
>>> TEST: tests/tpm-crb-swtpm-test... (pid=305)
>>>    /i386/tpm/crb-swtpm/test:                                            FAIL
>>> GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
>>>    /i386/tpm/crb-swtpm-migration/test:                                  FAIL
>>> GTester: last random seed: R02Sf628ca48da88252a6b95465fef3b855f
>>> FAIL: tests/tpm-crb-swtpm-test
>>> TEST: tests/tpm-crb-test... (pid=311)
>>>    /i386/tpm-crb/test:                                                  OK
>>> PASS: tests/tpm-crb-test
>>> TEST: tests/tpm-tis-swtpm-test... (pid=324)
>>>    /i386/tpm/tis-swtpm/test:                                            FAIL
>>> GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
>>>    /i386/tpm/tis-swtpm-migration/test:                                  FAIL
>>> GTester: last random seed: R02Sca4f303959770d4ca9f8f12b784dba0d
>>> FAIL: tests/tpm-tis-swtpm-test
>>> TEST: tests/tpm-tis-test... (pid=331)
>>>    /i386/tpm-tis/test_check_localities:                                 OK
>>>    /i386/tpm-tis/test_check_access_reg:                                 OK
>>>    /i386/tpm-tis/test_check_access_reg_seize:                           OK
>>>    /i386/tpm-tis/test_check_access_reg_release:                         OK
>>>    /i386/tpm-tis/test_check_transmit:                                   OK
>>> PASS: tests/tpm-tis-test
>>>
>> What version of swtpm & libtpms is installed?
> No idea, how do I tell? On my x86 Ubuntu machine which is one of those
> which failed there are no packages whose name includes either "swtpm"
> or "tpms".

Probably it's failing without it being installed. I had also tried 
running it on my machine without swtpm being installed and it didn't fail.


>
> thanks
> -- PMM
>