xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [xen-unstable test] 15136: regressions - FAIL
@ 2013-01-19 12:41 xen.org
  2013-01-19 12:52 ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: xen.org @ 2013-01-19 12:41 UTC (permalink / raw)
  To: xen-devel; +Cc: ian.jackson

flight 15136 xen-unstable real [real]
http://www.chiark.greenend.org.uk/~xensrcts/logs/15136/

Regressions :-(

Tests which did not succeed and are blocking,
including tests which could not be run:
 build-i386                    4 xen-build                 fail REGR. vs. 15130
 build-i386-oldkern            4 xen-build                 fail REGR. vs. 15130

Regressions which are regarded as allowable (not blocking):
 test-amd64-amd64-xl-sedf-pin  5 xen-boot                     fail   like 15130
 test-amd64-amd64-xl-sedf      5 xen-boot                     fail   like 15130

Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-pcipt-intel  9 guest-start                 fail never pass
 test-amd64-i386-rhel6hvm-amd  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-amd  1 xen-build-check(1)           blocked n/a
 test-amd64-i386-qemut-rhel6hvm-amd  1 xen-build-check(1)           blocked n/a
 test-amd64-i386-xend-winxpsp3  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl-win-vcpus1  1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-qemut-win7-amd64 13 guest-stop             fail never pass
 test-amd64-amd64-xl-qemuu-winxpsp3 13 guest-stop               fail never pass
 test-amd64-i386-win           1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-win         16 leak-check/check             fail   never pass
 test-amd64-amd64-xl-win7-amd64 13 guest-stop                   fail never pass
 test-amd64-i386-xl-credit2    1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-qemut-win-vcpus1  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl            1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl-multivcpu  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-pv            1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl-qemut-win7-amd64  1 xen-build-check(1)          blocked n/a
 test-amd64-i386-xl-win7-amd64  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-qemuu-rhel6hvm-intel  1 xen-build-check(1)         blocked n/a
 test-amd64-i386-qemut-rhel6hvm-intel  1 xen-build-check(1)         blocked n/a
 test-amd64-i386-rhel6hvm-intel  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-win-vcpus1    1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-pair          1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-winxpsp3 13 guest-stop                   fail   never pass
 test-amd64-i386-xl-qemut-winxpsp3-vcpus1  1 xen-build-check(1)     blocked n/a
 test-amd64-i386-xl-winxpsp3-vcpus1  1 xen-build-check(1)           blocked n/a
 test-amd64-i386-xl-qemut-win-vcpus1  1 xen-build-check(1)          blocked n/a
 test-amd64-i386-xend-qemut-winxpsp3  1 xen-build-check(1)          blocked n/a
 test-amd64-amd64-xl-qemut-winxpsp3 13 guest-stop               fail never pass
 test-amd64-i386-qemut-win     1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-win      13 guest-stop                   fail   never pass
 test-amd64-amd64-xl-qemuu-win7-amd64 13 guest-stop             fail never pass
 test-amd64-amd64-qemut-win   16 leak-check/check             fail   never pass
 test-amd64-amd64-xl-qemut-win 13 guest-stop                   fail  never pass

version targeted for testing:
 xen                  f07742a1a3c6
baseline version:
 xen                  025f202f3022

------------------------------------------------------------
People who touched revisions under test:
  Boris Ostrovsky <boris.ostrovsky@amd.com>
  Ian Campbell <ian.campbell@citrix.com>
  Ian Jackson <ian.jackson@eu.citrix.com>
  Jan Beulich <jbeulich@suse.com>
  Keir Fraser <keir@xen.org>
  Matthew Fioravante <matthew.fioravante@jhuapl.edu>
  Paolo Bonzini <pbonzini@redhat.com>
  Phil Evans <Phil.Evans@m247.com>
  Stefano Stabellini <stefano.stabellini@eu.citrix.com>
  Tim Deegan <tim@xen.org>
------------------------------------------------------------

jobs:
 build-amd64                                                  pass    
 build-i386                                                   fail    
 build-amd64-oldkern                                          pass    
 build-i386-oldkern                                           fail    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          pass    
 test-amd64-i386-xl                                           blocked 
 test-amd64-i386-rhel6hvm-amd                                 blocked 
 test-amd64-i386-qemut-rhel6hvm-amd                           blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-xl-qemut-win7-amd64                         fail    
 test-amd64-i386-xl-qemut-win7-amd64                          blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         fail    
 test-amd64-amd64-xl-win7-amd64                               fail    
 test-amd64-i386-xl-win7-amd64                                blocked 
 test-amd64-i386-xl-credit2                                   blocked 
 test-amd64-amd64-xl-pcipt-intel                              fail    
 test-amd64-i386-rhel6hvm-intel                               blocked 
 test-amd64-i386-qemut-rhel6hvm-intel                         blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-i386-xl-multivcpu                                 blocked 
 test-amd64-amd64-pair                                        pass    
 test-amd64-i386-pair                                         blocked 
 test-amd64-amd64-xl-sedf-pin                                 fail    
 test-amd64-amd64-pv                                          pass    
 test-amd64-i386-pv                                           blocked 
 test-amd64-amd64-xl-sedf                                     fail    
 test-amd64-i386-win-vcpus1                                   blocked 
 test-amd64-i386-qemut-win-vcpus1                             blocked 
 test-amd64-i386-xl-qemut-win-vcpus1                          blocked 
 test-amd64-i386-xl-win-vcpus1                                blocked 
 test-amd64-i386-xl-qemut-winxpsp3-vcpus1                     blocked 
 test-amd64-i386-xl-winxpsp3-vcpus1                           blocked 
 test-amd64-amd64-win                                         fail    
 test-amd64-i386-win                                          blocked 
 test-amd64-amd64-qemut-win                                   fail    
 test-amd64-i386-qemut-win                                    blocked 
 test-amd64-amd64-xl-qemut-win                                fail    
 test-amd64-amd64-xl-win                                      fail    
 test-amd64-i386-xend-qemut-winxpsp3                          blocked 
 test-amd64-amd64-xl-qemut-winxpsp3                           fail    
 test-amd64-amd64-xl-qemuu-winxpsp3                           fail    
 test-amd64-i386-xend-winxpsp3                                blocked 
 test-amd64-amd64-xl-winxpsp3                                 fail    


------------------------------------------------------------
sg-report-flight on woking.cam.xci-test.com
logs: /home/xc_osstest/logs
images: /home/xc_osstest/images

Logs, config files, etc. are available at
    http://www.chiark.greenend.org.uk/~xensrcts/logs

Test harness code can be found at
    http://xenbits.xensource.com/gitweb?p=osstest.git;a=summary


Not pushing.

------------------------------------------------------------
changeset:   26429:f07742a1a3c6
tag:         tip
user:        Ian Campbell <ian.campbell@citrix.com>
date:        Fri Jan 18 14:14:31 2013 +0000
    
    stubdom: rerun autogen.sh
    
    I forgot to do this while checking in 26424:e1d7053e4d45. Refresh now
    so as to not cause confusing looking changes next time it is run.
    
    Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26428:9e8c39bdc1fe
user:        Tim Deegan <tim@xen.org>
date:        Fri Jan 18 12:31:57 2013 +0100
    
    x86/hvm: fix RTC setting.
    
    When the guest writes one field of the RTC time, we must bring all the
    other fields up to date for the current second before calculating the
    new RTC time.
    
    Signed-off-by: Tim Deegan <tim@xen.org>
    Tested-by: Phil Evans <Phil.Evans@m247.com>
    Committed-by: Jan Beulich <jbeulich@suse.com>
    
    
changeset:   26427:8f6dd5dc5d6c
user:        Boris Ostrovsky <boris.ostrovsky@amd.com>
date:        Fri Jan 18 12:20:58 2013 +0100
    
    x86/AMD: Enable WC+ memory type on family 10 processors
    
    In some cases BIOS may not enable WC+ memory type on family 10 processors,
    instead converting what would be WC+ memory to CD type. On guests using
    nested pages this could result in performance degradation. This patch
    enables WC+.
    
    Signed-off-by: Boris Ostrovsky <boris.ostrovsky@amd.com>
    Committed-by: Jan Beulich <jbeulich@suse.com>
    
    
changeset:   26426:eb8e9a23925d
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:48 2013 +0000
    
    Add conditional build of subsystems to configure.ac
    
    The toplevel Makefile still works without running configure
    and will default build everything
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26425:76dce3b9468e
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:48 2013 +0000
    
    Add a top level configure script
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26424:e1d7053e4d45
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:47 2013 +0000
    
    stubdom: Add autoconf
    
    Stub domains now use autoconf to build.
    This configure script can enable or disable specific domains
    and also specify custom download locations for stubdom library
    packages. See ./configure --help for details.
    
    C and Caml are disabled by default. vtpm-stubdom is conditional
    on the presense of cmake.
    
    Rename vtpmmgrdom to vtpmmgr-stubdom
    
    Also update .*ignore
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26423:712419ef207b
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:46 2013 +0000
    
    README: Add cmake dependency
    
    cmake is an optional dependency for vtpm.
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26422:18326c674f9b
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:45 2013 +0000
    
    Add vtpm documentation
    
    See the files included in this patch for details
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26421:21b5491281c4
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:44 2013 +0000
    
    vtpm/vtpmmgr and required libs to stubdom/Makefile
    
    Add 3 new libraries to stubdom:
    libgmp
    polarssl
    Berlios TPM Emulator 0.7.4
    
    Add makefile structure for vtpm and vtpmmgrdom. Both
    vtpm domains are optional builds as vtpm depends on
    cmake. To build either of them, you must do so explicitly.
    make vtpm-stubdom vtpmmgrdom
    
    Finally, also update .*ignore
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    [ijc, folded in fix from Matthew to workaround cmake 2.8.2 build failure]
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26420:600a6694754a
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:43 2013 +0000
    
    add stubdom/vtpmmgr code
    
    Add the code base for vtpmmgrdom. Makefile changes
    next patch.
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26419:06b884fed150
user:        Matthew Fioravante <matthew.fioravante@jhuapl.edu>
date:        Fri Jan 18 10:55:42 2013 +0000
    
    add vtpm-stubdom code
    
    Add the code base for vtpm-stubdom to the stubdom
    heirarchy. Makefile changes in later patch.
    
    Signed-off-by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
    Acked-by: Ian Campbell <ian.campbell@citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
changeset:   26418:3b59a6c3e9b0
user:        Paolo Bonzini <pbonzini@redhat.com>
date:        Fri Jan 18 11:35:11 2013 +0100
    
    x86: find a better location for the real-mode trampoline
    
    On some machines, the location at 0x40e does not point to the beginning
    of the EBDA.  Rather, it points to the beginning of the BIOS-reserved
    area of the EBDA, while the option ROMs place their data below that
    segment.
    
    For this reason, 0x413 is actually a better source than 0x40e to get
    the location of the real-mode trampoline.  Xen was already using it
    as a second source, and this patch keeps that working.  However, just
    in case, let's also fetch the information from the multiboot structure,
    where the boot loader should have placed it.  This way we don't
    necessarily trust one of the BIOS or the multiboot loader more than
    the other.
    
    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    
    Retain the previous code, thus using the multiboot value only if it's
    sane but lower than the BDA computed one. Also use the full 32-bit
    mem_lower value and prefer MBI_MEMLIMITS over open coding it (requiring
    a slight adjustment to multiboot.h to make its constants actually
    usable in assembly code, which previously they were only meant to be).
    
    Signed-off-by: Jan Beulich <jbeulich@suse.com>
    Acked-by: Keir Fraser <keir@xen.org>
    Committed-by: Jan Beulich <jbeulich@suse.com>
    
    
changeset:   26417:025f202f3022
user:        Ian Campbell <ian.campbell@citrix.com>
date:        Thu Jan 17 16:48:25 2013 +0000
    
    xen: arm: fix assert in select_user_reg
    
    The condition was inverted.
    
    Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
    Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
    Committed-by: Ian Campbell <ian.campbell@citrix.com>
    
    
========================================
commit 2a1354d655d816feaad7dbdb8364f40a208439c1
Author: Ian Jackson <ian.jackson@eu.citrix.com>
Date:   Thu Jan 17 15:52:16 2013 +0000

    e1000: fix compile warning introduced by security fix, and debugging
    
    e33f918c19e393900b95a2bb6b10668dfe96a8f2, the fix for XSA-41,
    and its cherry picks in 4.2 and 4.1 introduced this compiler warning:
      hw/e1000.c:641: warning: 'return' with a value, in function returning void
    
    In upstream qemu (where this change came from), e1000_receive returns
    a value used by queueing machinery to decide whether to try
    resubmitting the packet later.  Returning "size" means that the packet
    has been dealt with and should not be retried.
    
    In this old branch (aka qemu-xen-traditional), this machinery is
    absent and e1000_receive returns void.  Fix the return statement.
    
    Also add a debugging statement along the lines of the others in this
    function.
    
    Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [xen-unstable test] 15136: regressions - FAIL
  2013-01-19 12:41 [xen-unstable test] 15136: regressions - FAIL xen.org
@ 2013-01-19 12:52 ` Ian Campbell
  2013-01-21 13:13   ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-19 12:52 UTC (permalink / raw)
  To: xen.org; +Cc: Fioravante, Matthew E., xen-devel@lists.xensource.com

On Sat, 2013-01-19 at 12:41 +0000, xen.org wrote:
> Tests which did not succeed and are blocking,
> including tests which could not be run:
>  build-i386                    4 xen-build                 fail REGR. vs. 15130
>  build-i386-oldkern            4 xen-build                 fail REGR. vs. 15130 

Looks like vtpm_storage.c doesn't compile for 32-bit:
        vtpm_storage.c: In function 'vtpm_storage_load_header':
        vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int'
        vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int'
        make[2]: *** [vtpm_storage.o] Error 1

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [xen-unstable test] 15136: regressions - FAIL
  2013-01-19 12:52 ` Ian Campbell
@ 2013-01-21 13:13   ` Ian Campbell
  2013-01-21 13:19     ` [PATCH] vtpmmgr: fix build on 32-bit Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 13:13 UTC (permalink / raw)
  To: Ian Jackson; +Cc: Fioravante, Matthew E., xen-devel@lists.xensource.com

On Sat, 2013-01-19 at 12:52 +0000, Ian Campbell wrote:
> On Sat, 2013-01-19 at 12:41 +0000, xen.org wrote:
> > Tests which did not succeed and are blocking,
> > including tests which could not be run:
> >  build-i386                    4 xen-build                 fail REGR. vs. 15130
> >  build-i386-oldkern            4 xen-build                 fail REGR. vs. 15130 
> 
> Looks like vtpm_storage.c doesn't compile for 32-bit:
>         vtpm_storage.c: In function 'vtpm_storage_load_header':
>         vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int'
>         vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int'
>         make[2]: *** [vtpm_storage.o] Error 1

diff --git a/stubdom/vtpmmgr/vtpm_storage.c b/stubdom/vtpmmgr/vtpm_storage.c
index abb0dba..de21b4a 100644
--- a/stubdom/vtpmmgr/vtpm_storage.c
+++ b/stubdom/vtpmmgr/vtpm_storage.c
@@ -655,7 +655,7 @@ TPM_RESULT vtpm_storage_load_header(void)
 
    /* Validate the length of the output buffer */
    if(datalen < AES_KEY_SIZE + sizeof(UINT32)) {
-      vtpmlogerror(VTPM_LOG_VTPM, "Unbound AES key size (%d) was too small! expected (%ld)\n", datalen, AES_KEY_SIZE + sizeof(UINT32));
+      vtpmlogerror(VTPM_LOG_VTPM, "Unbound AES key size (%d) was too small! expected (%zu)\n", datalen, AES_KEY_SIZE + sizeof(UINT32));
       status = TPM_IOERROR;
       goto abort_egress;
    }

But also:

ld -nostdlib -L/local/scratch/ianc/devel/xen-unstable.git/stubdom/cross-root-i686/i686-xen-elf/lib  -m elf_i386 \
	-T arch/x86/minios-x86_32.lds /local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os.o  \
	-o /local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os
ld: warning: section `.bss' type changed to PROGBITS
/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os.o: In function `aes_crypt_ecb':
/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:659: undefined reference to `padlock_supports'
/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:661: undefined reference to `padlock_xcryptecb'
/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os.o: In function `aes_crypt_cbc':
/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:771: undefined reference to `padlock_supports'
/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:773: undefined reference to `padlock_xcryptcbc'
make[1]: *** [/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os] Error 1
make[1]: Leaving directory `/local/scratch/ianc/devel/xen-unstable.git/extras/mini-os'
make: *** [vtpmmgr-stubdom] Error 2

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 13:13   ` Ian Campbell
@ 2013-01-21 13:19     ` Ian Campbell
  2013-01-21 13:22       ` Ian Campbell
  2013-01-21 15:14       ` Fioravante, Matthew E.
  0 siblings, 2 replies; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 13:19 UTC (permalink / raw)
  To: xen-devel
  Cc: Fioravante, Matthew E., Samuel Thibault, keir, Ian Campbell,
	ian.jackson

Correct format string, fixing:
        vtpm_storage.c: In function 'vtpm_storage_load_header': vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int'
        vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5 has type 'unsigned int' make[2]: *** [vtpm_storage.o] Error 1

Add padlock.o to PSSL_OBJS, fixing:
	/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os.o: In function `aes_crypt_ecb': /local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:659: undefined reference to `padlock_supports'
	/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:661: undefined reference to `padlock_xcryptecb' /local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os.o: In function `aes_crypt_cbc': /local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:771: undefined reference to `padlock_supports'
	/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-x86_32/library/aes.c:773: undefined reference to `padlock_xcryptcbc'
make[1]: ***
[/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-vtpmmgr/mini-os]
Error 1

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
---
 stubdom/vtpmmgr/Makefile       |    2 +-
 stubdom/vtpmmgr/vtpm_storage.c |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile
index 88c83c3..e41c261 100644
--- a/stubdom/vtpmmgr/Makefile
+++ b/stubdom/vtpmmgr/Makefile
@@ -12,7 +12,7 @@
 XEN_ROOT=../..
 
 PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
-PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o timing.o entropy_poll.o
+PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o timing.o entropy_poll.o padlock.o
 
 TARGET=vtpmmgr.a
 OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o log.o
diff --git a/stubdom/vtpmmgr/vtpm_storage.c b/stubdom/vtpmmgr/vtpm_storage.c
index abb0dba..de21b4a 100644
--- a/stubdom/vtpmmgr/vtpm_storage.c
+++ b/stubdom/vtpmmgr/vtpm_storage.c
@@ -655,7 +655,7 @@ TPM_RESULT vtpm_storage_load_header(void)
 
    /* Validate the length of the output buffer */
    if(datalen < AES_KEY_SIZE + sizeof(UINT32)) {
-      vtpmlogerror(VTPM_LOG_VTPM, "Unbound AES key size (%d) was too small! expected (%ld)\n", datalen, AES_KEY_SIZE + sizeof(UINT32));
+      vtpmlogerror(VTPM_LOG_VTPM, "Unbound AES key size (%d) was too small! expected (%zu)\n", datalen, AES_KEY_SIZE + sizeof(UINT32));
       status = TPM_IOERROR;
       goto abort_egress;
    }
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 13:19     ` [PATCH] vtpmmgr: fix build on 32-bit Ian Campbell
@ 2013-01-21 13:22       ` Ian Campbell
  2013-01-21 13:24         ` Samuel Thibault
  2013-01-21 15:14       ` Fioravante, Matthew E.
  1 sibling, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 13:22 UTC (permalink / raw)
  To: xen-devel@lists.xen.org
  Cc: Fioravante, Matthew E., Samuel Thibault, Keir (Xen.org),
	Ian Jackson

On Mon, 2013-01-21 at 13:19 +0000, Ian Campbell wrote:
> @@ -12,7 +12,7 @@
>  XEN_ROOT=../..
>  
>  PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> timing.o entropy_poll.o
> +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> timing.o entropy_poll.o padlock.o

This was a quick fix to get the build fixed (and a test pass) sooner
rather than later.

But I wonder why we aren't using
stubdom/polarssl-$(XEN_TARGET_ARCH)/library/libpolarssl.a here?

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 13:22       ` Ian Campbell
@ 2013-01-21 13:24         ` Samuel Thibault
  2013-01-21 13:42           ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Samuel Thibault @ 2013-01-21 13:24 UTC (permalink / raw)
  To: Ian Campbell
  Cc: Fioravante, Matthew E., Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

Ian Campbell, le Mon 21 Jan 2013 13:22:09 +0000, a écrit :
> > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> > timing.o entropy_poll.o
> > +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> > timing.o entropy_poll.o padlock.o
> 
> But I wonder why we aren't using
> stubdom/polarssl-$(XEN_TARGET_ARCH)/library/libpolarssl.a here?

Indeed, it should have the same effect, if it contains these .o files.

Samuel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 13:24         ` Samuel Thibault
@ 2013-01-21 13:42           ` Ian Campbell
  2013-01-21 14:33             ` Fioravante, Matthew E.
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 13:42 UTC (permalink / raw)
  To: Samuel Thibault
  Cc: Fioravante, Matthew E., Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

On Mon, 2013-01-21 at 13:24 +0000, Samuel Thibault wrote:
> Ian Campbell, le Mon 21 Jan 2013 13:22:09 +0000, a écrit :
> > > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> > > timing.o entropy_poll.o
> > > +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> > > timing.o entropy_poll.o padlock.o
> > 
> > But I wonder why we aren't using
> > stubdom/polarssl-$(XEN_TARGET_ARCH)/library/libpolarssl.a here?
> 
> Indeed, it should have the same effect, if it contains these .o files.

It looks to contain a superset, but the following incrmental patch Works
For Me

Ian.

8<-----------------

From 7034f9965104fca7212ecc9bf89f3b3517b7bbfe Mon Sep 17 00:00:00 2001
From: Ian Campbell <ian.campbell@citrix.com>
Date: Mon, 21 Jan 2013 13:40:56 +0000
Subject: [PATCH] vtpmmgr: Use libpolarssl.a instead of hardcoding own list of .o files

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
---
 stubdom/Makefile         |    2 +-
 stubdom/vtpmmgr/Makefile |    5 +----
 2 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/stubdom/Makefile b/stubdom/Makefile
index 64ee6e2..65d02bb 100644
--- a/stubdom/Makefile
+++ b/stubdom/Makefile
@@ -432,7 +432,7 @@ vtpm-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpm vtpm
 
 .PHONY: vtpmmgr-stubdom
 vtpmmgr-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpmmgr vtpmmgr
-	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a" APP_LDLIBS="-lm"
+	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a" APP_LDLIBS="-lm -lpolarssl"
 
 .PHONY: pv-grub
 pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub
diff --git a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile
index e41c261..af13b39 100644
--- a/stubdom/vtpmmgr/Makefile
+++ b/stubdom/vtpmmgr/Makefile
@@ -11,9 +11,6 @@
 
 XEN_ROOT=../..
 
-PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
-PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o timing.o entropy_poll.o padlock.o
-
 TARGET=vtpmmgr.a
 OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o log.o
 
@@ -22,7 +19,7 @@ CFLAGS+=-Wno-declaration-after-statement -Wno-unused-label
 
 build: $(TARGET)
 $(TARGET): $(OBJS)
-	ar -rcs $@ $^ $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
+	ar -rcs $@ $^
 
 clean:
 	rm -f $(TARGET) $(OBJS)
-- 
1.7.2.5




_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 13:42           ` Ian Campbell
@ 2013-01-21 14:33             ` Fioravante, Matthew E.
  2013-01-21 14:51               ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Fioravante, Matthew E. @ 2013-01-21 14:33 UTC (permalink / raw)
  To: Ian Campbell, Samuel Thibault
  Cc: Keir (Xen.org), Ian Jackson, xen-devel@lists.xen.org



> -----Original Message-----
> From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> Sent: Monday, January 21, 2013 8:43 AM
> To: Samuel Thibault
> Cc: xen-devel@lists.xen.org; Ian Jackson; Keir (Xen.org); Fioravante, Matthew E.
> Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> 
> On Mon, 2013-01-21 at 13:24 +0000, Samuel Thibault wrote:
> > Ian Campbell, le Mon 21 Jan 2013 13:22:09 +0000, a écrit :
> > > > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > > havege.o timing.o entropy_poll.o
> > > > +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > > +havege.o
> > > > timing.o entropy_poll.o padlock.o
> > >
> > > But I wonder why we aren't using
> > > stubdom/polarssl-$(XEN_TARGET_ARCH)/library/libpolarssl.a here?
> >
> > Indeed, it should have the same effect, if it contains these .o files.
> 
> It looks to contain a superset, but the following incrmental patch Works For Me

The idea was to keep vtpm and vtpmmgr as small as possible. Only the components of polarssl that are required are linked in. Polarssl is designed so that you can mix and match the specific crypto pieces by choosing specific .o files. Some parts of polarssl like networking may even require lwip or other depencies which vtpm does not use. Vtpmmgr actually uses its own rsa code (tpm_rsa.c) which is based on polarssl's rsa because the polarssl implementation is missing a feature.

Not only is that somewhat important from an efficiency standpoint but also from a security standpoint. Security folks like smaller code bases that they can reason about.
> 
> Ian.
> 
> 8<-----------------
> 
> From 7034f9965104fca7212ecc9bf89f3b3517b7bbfe Mon Sep 17 00:00:00 2001
> From: Ian Campbell <ian.campbell@citrix.com>
> Date: Mon, 21 Jan 2013 13:40:56 +0000
> Subject: [PATCH] vtpmmgr: Use libpolarssl.a instead of hardcoding own list of .o
> files
> 
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
> Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
> ---
>  stubdom/Makefile         |    2 +-
>  stubdom/vtpmmgr/Makefile |    5 +----
>  2 files changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/stubdom/Makefile b/stubdom/Makefile index 64ee6e2..65d02bb
> 100644
> --- a/stubdom/Makefile
> +++ b/stubdom/Makefile
> @@ -432,7 +432,7 @@ vtpm-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpm
> vtpm
> 
>  .PHONY: vtpmmgr-stubdom
>  vtpmmgr-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpmmgr vtpmmgr
> -	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> APP_LDLIBS="-lm"
> +	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> APP_LDLIBS="-lm -lpolarssl"
This should work fine if you want to do it that way.

> 
>  .PHONY: pv-grub
>  pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub diff --git
> a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile index
> e41c261..af13b39 100644
> --- a/stubdom/vtpmmgr/Makefile
> +++ b/stubdom/vtpmmgr/Makefile
> @@ -11,9 +11,6 @@
> 
>  XEN_ROOT=../..
> 
> -PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> timing.o entropy_poll.o padlock.o
> -
>  TARGET=vtpmmgr.a
>  OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o
> log.o
> 
> @@ -22,7 +19,7 @@ CFLAGS+=-Wno-declaration-after-statement -Wno-
> unused-label
> 
>  build: $(TARGET)
>  $(TARGET): $(OBJS)
> -	ar -rcs $@ $^ $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
> +	ar -rcs $@ $^
> 
>  clean:
>  	rm -f $(TARGET) $(OBJS)
> --
> 1.7.2.5
> 
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 14:33             ` Fioravante, Matthew E.
@ 2013-01-21 14:51               ` Ian Campbell
  2013-01-21 15:08                 ` Fioravante, Matthew E.
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 14:51 UTC (permalink / raw)
  To: Fioravante, Matthew E.
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

On Mon, 2013-01-21 at 14:33 +0000, Fioravante, Matthew E. wrote:
> 
> > -----Original Message-----
> > From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> > Sent: Monday, January 21, 2013 8:43 AM
> > To: Samuel Thibault
> > Cc: xen-devel@lists.xen.org; Ian Jackson; Keir (Xen.org); Fioravante, Matthew E.
> > Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> > 
> > On Mon, 2013-01-21 at 13:24 +0000, Samuel Thibault wrote:
> > > Ian Campbell, le Mon 21 Jan 2013 13:22:09 +0000, a écrit :
> > > > > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > > > havege.o timing.o entropy_poll.o
> > > > > +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > > > +havege.o
> > > > > timing.o entropy_poll.o padlock.o
> > > >
> > > > But I wonder why we aren't using
> > > > stubdom/polarssl-$(XEN_TARGET_ARCH)/library/libpolarssl.a here?
> > >
> > > Indeed, it should have the same effect, if it contains these .o files.
> > 
> > It looks to contain a superset, but the following incrmental patch Works For Me
> 
> The idea was to keep vtpm and vtpmmgr as small as possible. Only the
> components of polarssl that are required are linked in. Polarssl is
> designed so that you can mix and match the specific crypto pieces by
> choosing specific .o files. Some parts of polarssl like networking may
> even require lwip or other depencies which vtpm does not use.

Because you are linking the .a file the linker should only pull in the
bits you actually use, and by extension only pull in their dependencies.

Ian.

>  Vtpmmgr actually uses its own rsa code (tpm_rsa.c) which is based on
> polarssl's rsa because the polarssl implementation is missing a
> feature.
> 
> Not only is that somewhat important from an efficiency standpoint but
> also from a security standpoint. Security folks like smaller code
> bases that they can reason about.
> > 
> > Ian.
> > 
> > 8<-----------------
> > 
> > From 7034f9965104fca7212ecc9bf89f3b3517b7bbfe Mon Sep 17 00:00:00 2001
> > From: Ian Campbell <ian.campbell@citrix.com>
> > Date: Mon, 21 Jan 2013 13:40:56 +0000
> > Subject: [PATCH] vtpmmgr: Use libpolarssl.a instead of hardcoding own list of .o
> > files
> > 
> > Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> > Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
> > Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
> > ---
> >  stubdom/Makefile         |    2 +-
> >  stubdom/vtpmmgr/Makefile |    5 +----
> >  2 files changed, 2 insertions(+), 5 deletions(-)
> > 
> > diff --git a/stubdom/Makefile b/stubdom/Makefile index 64ee6e2..65d02bb
> > 100644
> > --- a/stubdom/Makefile
> > +++ b/stubdom/Makefile
> > @@ -432,7 +432,7 @@ vtpm-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpm
> > vtpm
> > 
> >  .PHONY: vtpmmgr-stubdom
> >  vtpmmgr-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpmmgr vtpmmgr
> > -	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> > DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> > MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> > OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> > APP_LDLIBS="-lm"
> > +	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> > DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> > MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> > OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> > APP_LDLIBS="-lm -lpolarssl"
> This should work fine if you want to do it that way.
> 
> > 
> >  .PHONY: pv-grub
> >  pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub diff --git
> > a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile index
> > e41c261..af13b39 100644
> > --- a/stubdom/vtpmmgr/Makefile
> > +++ b/stubdom/vtpmmgr/Makefile
> > @@ -11,9 +11,6 @@
> > 
> >  XEN_ROOT=../..
> > 
> > -PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> > timing.o entropy_poll.o padlock.o
> > -
> >  TARGET=vtpmmgr.a
> >  OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o
> > log.o
> > 
> > @@ -22,7 +19,7 @@ CFLAGS+=-Wno-declaration-after-statement -Wno-
> > unused-label
> > 
> >  build: $(TARGET)
> >  $(TARGET): $(OBJS)
> > -	ar -rcs $@ $^ $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
> > +	ar -rcs $@ $^
> > 
> >  clean:
> >  	rm -f $(TARGET) $(OBJS)
> > --
> > 1.7.2.5
> > 
> > 
> 



_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 14:51               ` Ian Campbell
@ 2013-01-21 15:08                 ` Fioravante, Matthew E.
  2013-01-21 15:12                   ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Fioravante, Matthew E. @ 2013-01-21 15:08 UTC (permalink / raw)
  To: Ian Campbell
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org



> -----Original Message-----
> From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> Sent: Monday, January 21, 2013 9:52 AM
> To: Fioravante, Matthew E.
> Cc: Samuel Thibault; xen-devel@lists.xen.org; Ian Jackson; Keir (Xen.org)
> Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> 
> On Mon, 2013-01-21 at 14:33 +0000, Fioravante, Matthew E. wrote:
> >
> > > -----Original Message-----
> > > From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> > > Sent: Monday, January 21, 2013 8:43 AM
> > > To: Samuel Thibault
> > > Cc: xen-devel@lists.xen.org; Ian Jackson; Keir (Xen.org); Fioravante,
> Matthew E.
> > > Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> > >
> > > On Mon, 2013-01-21 at 13:24 +0000, Samuel Thibault wrote:
> > > > Ian Campbell, le Mon 21 Jan 2013 13:22:09 +0000, a écrit :
> > > > > > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > > > > havege.o timing.o entropy_poll.o
> > > > > > +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > > > > +havege.o
> > > > > > timing.o entropy_poll.o padlock.o
> > > > >
> > > > > But I wonder why we aren't using
> > > > > stubdom/polarssl-$(XEN_TARGET_ARCH)/library/libpolarssl.a here?
> > > >
> > > > Indeed, it should have the same effect, if it contains these .o files.
> > >
> > > It looks to contain a superset, but the following incrmental patch
> > > Works For Me
> >
> > The idea was to keep vtpm and vtpmmgr as small as possible. Only the
> > components of polarssl that are required are linked in. Polarssl is
> > designed so that you can mix and match the specific crypto pieces by
> > choosing specific .o files. Some parts of polarssl like networking may
> > even require lwip or other depencies which vtpm does not use.
> 
> Because you are linking the .a file the linker should only pull in the bits you
> actually use, and by extension only pull in their dependencies.

In that case if the output binaries are the same we can change it to link to the entire library if that is what's preferred.
> 
> Ian.
> 
> >  Vtpmmgr actually uses its own rsa code (tpm_rsa.c) which is based on
> > polarssl's rsa because the polarssl implementation is missing a
> > feature.
> >
> > Not only is that somewhat important from an efficiency standpoint but
> > also from a security standpoint. Security folks like smaller code
> > bases that they can reason about.
> > >
> > > Ian.
> > >
> > > 8<-----------------
> > >
> > > From 7034f9965104fca7212ecc9bf89f3b3517b7bbfe Mon Sep 17 00:00:00
> > > 2001
> > > From: Ian Campbell <ian.campbell@citrix.com>
> > > Date: Mon, 21 Jan 2013 13:40:56 +0000
> > > Subject: [PATCH] vtpmmgr: Use libpolarssl.a instead of hardcoding
> > > own list of .o files
> > >
> > > Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> > > Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
> > > Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
> > > ---
> > >  stubdom/Makefile         |    2 +-
> > >  stubdom/vtpmmgr/Makefile |    5 +----
> > >  2 files changed, 2 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/stubdom/Makefile b/stubdom/Makefile index
> > > 64ee6e2..65d02bb
> > > 100644
> > > --- a/stubdom/Makefile
> > > +++ b/stubdom/Makefile
> > > @@ -432,7 +432,7 @@ vtpm-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpm
> > > vtpm
> > >
> > >  .PHONY: vtpmmgr-stubdom
> > >  vtpmmgr-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpmmgr vtpmmgr
> > > -	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> > > DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> > > MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> > > OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> > > APP_LDLIBS="-lm"
> > > +	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> > > DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> > > MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> > > OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> > > APP_LDLIBS="-lm -lpolarssl"
> > This should work fine if you want to do it that way.
> >
> > >
> > >  .PHONY: pv-grub
> > >  pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub diff --git
> > > a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile index
> > > e41c261..af13b39 100644
> > > --- a/stubdom/vtpmmgr/Makefile
> > > +++ b/stubdom/vtpmmgr/Makefile
> > > @@ -11,9 +11,6 @@
> > >
> > >  XEN_ROOT=../..
> > >
> > > -PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> > > -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o
> > > havege.o timing.o entropy_poll.o padlock.o
> > > -
> > >  TARGET=vtpmmgr.a
> > >  OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o
> > > tpm.o log.o
> > >
> > > @@ -22,7 +19,7 @@ CFLAGS+=-Wno-declaration-after-statement -Wno-
> > > unused-label
> > >
> > >  build: $(TARGET)
> > >  $(TARGET): $(OBJS)
> > > -	ar -rcs $@ $^ $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
> > > +	ar -rcs $@ $^
> > >
> > >  clean:
> > >  	rm -f $(TARGET) $(OBJS)
> > > --
> > > 1.7.2.5
> > >
> > >
> >
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 15:08                 ` Fioravante, Matthew E.
@ 2013-01-21 15:12                   ` Ian Campbell
  0 siblings, 0 replies; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 15:12 UTC (permalink / raw)
  To: Fioravante, Matthew E.
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

On Mon, 2013-01-21 at 15:08 +0000, Fioravante, Matthew E. wrote:
> > > The idea was to keep vtpm and vtpmmgr as small as possible. Only the
> > > components of polarssl that are required are linked in. Polarssl is
> > > designed so that you can mix and match the specific crypto pieces by
> > > choosing specific .o files. Some parts of polarssl like networking may
> > > even require lwip or other depencies which vtpm does not use.
> > 
> > Because you are linking the .a file the linker should only pull in the bits you
> > actually use, and by extension only pull in their dependencies.
> 
> In that case if the output binaries are the same we can change it to
> link to the entire library if that is what's preferred.

The sizes are identical, I didn't check the actual contents.

I'm a bit more concerned about the first patch ("vtpmmgr: fix build on
32-bit") right at the moment since the build failure is blocking the
automated test. If you are ok with please could you ack.

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 13:19     ` [PATCH] vtpmmgr: fix build on 32-bit Ian Campbell
  2013-01-21 13:22       ` Ian Campbell
@ 2013-01-21 15:14       ` Fioravante, Matthew E.
  2013-01-21 16:16         ` Ian Campbell
  1 sibling, 1 reply; 17+ messages in thread
From: Fioravante, Matthew E. @ 2013-01-21 15:14 UTC (permalink / raw)
  To: Ian Campbell, xen-devel@lists.xen.org
  Cc: Samuel Thibault, keir@xen.org, ian.jackson@citrix.com

Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>

> -----Original Message-----
> From: Ian Campbell [mailto:ian.campbell@citrix.com]
> Sent: Monday, January 21, 2013 8:20 AM
> To: xen-devel@lists.xen.org
> Cc: Samuel Thibault; ian.jackson@citrix.com; keir@xen.org; Ian Campbell;
> Fioravante, Matthew E.
> Subject: [PATCH] vtpmmgr: fix build on 32-bit
> 
> Correct format string, fixing:
>         vtpm_storage.c: In function 'vtpm_storage_load_header':
> vtpm_storage.c:658: error: format '%ld' expects type 'long int', but argument 5
> has type 'unsigned int'
>         vtpm_storage.c:658: error: format '%ld' expects type 'long int', but
> argument 5 has type 'unsigned int' make[2]: *** [vtpm_storage.o] Error 1
> 
> Add padlock.o to PSSL_OBJS, fixing:
> 	/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-
> vtpmmgr/mini-os.o: In function `aes_crypt_ecb': /local/scratch/ianc/devel/xen-
> unstable.git/stubdom/polarssl-x86_32/library/aes.c:659: undefined reference to
> `padlock_supports'
> 	/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-
> x86_32/library/aes.c:661: undefined reference to `padlock_xcryptecb'
> /local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-
> vtpmmgr/mini-os.o: In function `aes_crypt_cbc': /local/scratch/ianc/devel/xen-
> unstable.git/stubdom/polarssl-x86_32/library/aes.c:771: undefined reference to
> `padlock_supports'
> 	/local/scratch/ianc/devel/xen-unstable.git/stubdom/polarssl-
> x86_32/library/aes.c:773: undefined reference to `padlock_xcryptcbc'
> make[1]: ***
> [/local/scratch/ianc/devel/xen-unstable.git/stubdom/mini-os-x86_32-
> vtpmmgr/mini-os]
> Error 1
> 
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
> ---
>  stubdom/vtpmmgr/Makefile       |    2 +-
>  stubdom/vtpmmgr/vtpm_storage.c |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile index
> 88c83c3..e41c261 100644
> --- a/stubdom/vtpmmgr/Makefile
> +++ b/stubdom/vtpmmgr/Makefile
> @@ -12,7 +12,7 @@
>  XEN_ROOT=../..
> 
>  PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> timing.o entropy_poll.o
> +PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> +timing.o entropy_poll.o padlock.o
> 
>  TARGET=vtpmmgr.a
>  OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o
> log.o diff --git a/stubdom/vtpmmgr/vtpm_storage.c
> b/stubdom/vtpmmgr/vtpm_storage.c index abb0dba..de21b4a 100644
> --- a/stubdom/vtpmmgr/vtpm_storage.c
> +++ b/stubdom/vtpmmgr/vtpm_storage.c
> @@ -655,7 +655,7 @@ TPM_RESULT vtpm_storage_load_header(void)
> 
>     /* Validate the length of the output buffer */
>     if(datalen < AES_KEY_SIZE + sizeof(UINT32)) {
> -      vtpmlogerror(VTPM_LOG_VTPM, "Unbound AES key size (%d) was too small!
> expected (%ld)\n", datalen, AES_KEY_SIZE + sizeof(UINT32));
> +      vtpmlogerror(VTPM_LOG_VTPM, "Unbound AES key size (%d) was too
> + small! expected (%zu)\n", datalen, AES_KEY_SIZE + sizeof(UINT32));
>        status = TPM_IOERROR;
>        goto abort_egress;
>     }
> --
> 1.7.2.5

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 15:14       ` Fioravante, Matthew E.
@ 2013-01-21 16:16         ` Ian Campbell
  2013-01-21 16:17           ` Fioravante, Matthew E.
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 16:16 UTC (permalink / raw)
  To: Fioravante, Matthew E.
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

On Mon, 2013-01-21 at 15:14 +0000, Fioravante, Matthew E. wrote:
> Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>

Thanks, applied.

I noticed that I had to add padlock.o to stubdom/vtpm/Makefile too. I
just went ahead and did that.

Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 16:16         ` Ian Campbell
@ 2013-01-21 16:17           ` Fioravante, Matthew E.
  2013-01-21 16:26             ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Fioravante, Matthew E. @ 2013-01-21 16:17 UTC (permalink / raw)
  To: Ian Campbell
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org



> -----Original Message-----
> From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> Sent: Monday, January 21, 2013 11:16 AM
> To: Fioravante, Matthew E.
> Cc: xen-devel@lists.xen.org; Samuel Thibault; Ian Jackson; Keir (Xen.org)
> Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> 
> On Mon, 2013-01-21 at 15:14 +0000, Fioravante, Matthew E. wrote:
> > Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
> 
> Thanks, applied.
> 
> I noticed that I had to add padlock.o to stubdom/vtpm/Makefile too. I just went
> ahead and did that.
Hmm, I thought that was included. Its something that only works in via cpus so its easy to miss. Anyway if you just switch to -lpolarssl then that problem should fix itself also.
> 
> Ian.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 16:17           ` Fioravante, Matthew E.
@ 2013-01-21 16:26             ` Ian Campbell
  2013-01-21 18:27               ` Fioravante, Matthew E.
  0 siblings, 1 reply; 17+ messages in thread
From: Ian Campbell @ 2013-01-21 16:26 UTC (permalink / raw)
  To: Fioravante, Matthew E.
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

On Mon, 2013-01-21 at 16:17 +0000, Fioravante, Matthew E. wrote:
> 
> > -----Original Message-----
> > From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> > Sent: Monday, January 21, 2013 11:16 AM
> > To: Fioravante, Matthew E.
> > Cc: xen-devel@lists.xen.org; Samuel Thibault; Ian Jackson; Keir (Xen.org)
> > Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> > 
> > On Mon, 2013-01-21 at 15:14 +0000, Fioravante, Matthew E. wrote:
> > > Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
> > 
> > Thanks, applied.
> > 
> > I noticed that I had to add padlock.o to stubdom/vtpm/Makefile too. I just went
> > ahead and did that.
> Hmm, I thought that was included. Its something that only works in via
> cpus so its easy to miss. Anyway if you just switch to -lpolarssl then
> that problem should fix itself also.

I've already pushed the padlock.o fix but here is the updated "use
-lpolarssl" patch.

8<----------------------------------------

>From f8650d829965e16612a2570990190ded991294f3 Mon Sep 17 00:00:00 2001
From: Ian Campbell <ian.campbell@citrix.com>
Date: Mon, 21 Jan 2013 13:40:56 +0000
Subject: [PATCH] vtpm/vtpmmgr: Use libpolarssl.a instead of hardcoding own list of .o files

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
--
v2: Do vtpm as well as vtpmmgr.
---
 stubdom/Makefile         |    4 ++--
 stubdom/vtpm/Makefile    |    5 +----
 stubdom/vtpmmgr/Makefile |    5 +----
 3 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/stubdom/Makefile b/stubdom/Makefile
index 64ee6e2..970f227 100644
--- a/stubdom/Makefile
+++ b/stubdom/Makefile
@@ -428,11 +428,11 @@ c-stubdom: mini-os-$(XEN_TARGET_ARCH)-c lwip-$(XEN_TARGET_ARCH) libxc c
 
 .PHONY: vtpm-stubdom
 vtpm-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpm vtpm
-	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/vtpm/minios.cfg" $(MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpm/vtpm.a" APP_LDLIBS="-ltpm -ltpm_crypto -lgmp"
+	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/vtpm/minios.cfg" $(MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpm/vtpm.a" APP_LDLIBS="-ltpm -ltpm_crypto -lgmp -lpolarssl"
 
 .PHONY: vtpmmgr-stubdom
 vtpmmgr-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpmmgr vtpmmgr
-	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a" APP_LDLIBS="-lm"
+	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)" DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)" MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS) OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a" APP_LDLIBS="-lm -lpolarssl"
 
 .PHONY: pv-grub
 pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub
diff --git a/stubdom/vtpm/Makefile b/stubdom/vtpm/Makefile
index 30f7a1a..37051c1 100644
--- a/stubdom/vtpm/Makefile
+++ b/stubdom/vtpm/Makefile
@@ -11,9 +11,6 @@
 
 XEN_ROOT=../..
 
-PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
-PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o sha4.o padlock.o
-
 TARGET=vtpm.a
 OBJS=vtpm.o vtpm_cmd.o vtpmblk.o vtpm_pcrs.o
 
@@ -24,7 +21,7 @@ CPPFLAGS+=-I../tpm_emulator-$(XEN_TARGET_ARCH)/crypto
 CPPFLAGS+=-I../tpm_emulator-$(XEN_TARGET_ARCH)
 
 $(TARGET): $(OBJS)
-	ar -cr $@ $(OBJS) $(TPMEMU_OBJS) $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
+	ar -cr $@ $(OBJS)
 
 $(OBJS): vtpm_manager.h
 
diff --git a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile
index e41c261..af13b39 100644
--- a/stubdom/vtpmmgr/Makefile
+++ b/stubdom/vtpmmgr/Makefile
@@ -11,9 +11,6 @@
 
 XEN_ROOT=../..
 
-PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
-PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o timing.o entropy_poll.o padlock.o
-
 TARGET=vtpmmgr.a
 OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o log.o
 
@@ -22,7 +19,7 @@ CFLAGS+=-Wno-declaration-after-statement -Wno-unused-label
 
 build: $(TARGET)
 $(TARGET): $(OBJS)
-	ar -rcs $@ $^ $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
+	ar -rcs $@ $^
 
 clean:
 	rm -f $(TARGET) $(OBJS)
-- 
1.7.2.5

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 16:26             ` Ian Campbell
@ 2013-01-21 18:27               ` Fioravante, Matthew E.
  2013-01-24 13:07                 ` Ian Campbell
  0 siblings, 1 reply; 17+ messages in thread
From: Fioravante, Matthew E. @ 2013-01-21 18:27 UTC (permalink / raw)
  To: Ian Campbell
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org



> -----Original Message-----
> From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> Sent: Monday, January 21, 2013 11:27 AM
> To: Fioravante, Matthew E.
> Cc: Samuel Thibault; Keir (Xen.org); Ian Jackson; xen-devel@lists.xen.org
> Subject: Re: [Xen-devel] [PATCH] vtpmmgr: fix build on 32-bit
> 
> On Mon, 2013-01-21 at 16:17 +0000, Fioravante, Matthew E. wrote:
> >
> > > -----Original Message-----
> > > From: Ian Campbell [mailto:Ian.Campbell@citrix.com]
> > > Sent: Monday, January 21, 2013 11:16 AM
> > > To: Fioravante, Matthew E.
> > > Cc: xen-devel@lists.xen.org; Samuel Thibault; Ian Jackson; Keir
> > > (Xen.org)
> > > Subject: Re: [PATCH] vtpmmgr: fix build on 32-bit
> > >
> > > On Mon, 2013-01-21 at 15:14 +0000, Fioravante, Matthew E. wrote:
> > > > Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>
> > >
> > > Thanks, applied.
> > >
> > > I noticed that I had to add padlock.o to stubdom/vtpm/Makefile too.
> > > I just went ahead and did that.
> > Hmm, I thought that was included. Its something that only works in via
> > cpus so its easy to miss. Anyway if you just switch to -lpolarssl then
> > that problem should fix itself also.
> 
> I've already pushed the padlock.o fix but here is the updated "use -lpolarssl"
> patch.
Looks good. If it compiles for you then:
Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>

> 
> 8<----------------------------------------
> 
> From f8650d829965e16612a2570990190ded991294f3 Mon Sep 17 00:00:00
> 2001
> From: Ian Campbell <ian.campbell@citrix.com>
> Date: Mon, 21 Jan 2013 13:40:56 +0000
> Subject: [PATCH] vtpm/vtpmmgr: Use libpolarssl.a instead of hardcoding own
> list of .o files
> 
> Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
> Cc: Samuel Thibault <samuel.thibault@ens-lyon.org>
> Cc: "Fioravante, Matthew E." <Matthew.Fioravante@jhuapl.edu>
> --
> v2: Do vtpm as well as vtpmmgr.
> ---
>  stubdom/Makefile         |    4 ++--
>  stubdom/vtpm/Makefile    |    5 +----
>  stubdom/vtpmmgr/Makefile |    5 +----
>  3 files changed, 4 insertions(+), 10 deletions(-)
> 
> diff --git a/stubdom/Makefile b/stubdom/Makefile index 64ee6e2..970f227
> 100644
> --- a/stubdom/Makefile
> +++ b/stubdom/Makefile
> @@ -428,11 +428,11 @@ c-stubdom: mini-os-$(XEN_TARGET_ARCH)-c lwip-
> $(XEN_TARGET_ARCH) libxc c
> 
>  .PHONY: vtpm-stubdom
>  vtpm-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpm vtpm
> -	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> MINIOS_CONFIG="$(CURDIR)/vtpm/minios.cfg" $(MAKE) -C $(MINI_OS)
> OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpm/vtpm.a" APP_LDLIBS="-
> ltpm -ltpm_crypto -lgmp"
> +	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> MINIOS_CONFIG="$(CURDIR)/vtpm/minios.cfg" $(MAKE) -C $(MINI_OS)
> OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpm/vtpm.a" APP_LDLIBS="-
> ltpm -ltpm_crypto -lgmp -lpolarssl"
> 
>  .PHONY: vtpmmgr-stubdom
>  vtpmmgr-stubdom: mini-os-$(XEN_TARGET_ARCH)-vtpmmgr vtpmmgr
> -	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> APP_LDLIBS="-lm"
> +	DEF_CPPFLAGS="$(TARGET_CPPFLAGS)"
> DEF_CFLAGS="$(TARGET_CFLAGS)" DEF_LDFLAGS="$(TARGET_LDFLAGS)"
> MINIOS_CONFIG="$(CURDIR)/vtpmmgr/minios.cfg" $(MAKE) -C $(MINI_OS)
> OBJ_DIR=$(CURDIR)/$< APP_OBJS="$(CURDIR)/vtpmmgr/vtpmmgr.a"
> APP_LDLIBS="-lm -lpolarssl"
> 
>  .PHONY: pv-grub
>  pv-grub: mini-os-$(XEN_TARGET_ARCH)-grub libxc grub diff --git
> a/stubdom/vtpm/Makefile b/stubdom/vtpm/Makefile index 30f7a1a..37051c1
> 100644
> --- a/stubdom/vtpm/Makefile
> +++ b/stubdom/vtpm/Makefile
> @@ -11,9 +11,6 @@
> 
>  XEN_ROOT=../..
> 
> -PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o sha4.o padlock.o
> -
>  TARGET=vtpm.a
>  OBJS=vtpm.o vtpm_cmd.o vtpmblk.o vtpm_pcrs.o
> 
> @@ -24,7 +21,7 @@ CPPFLAGS+=-I../tpm_emulator-
> $(XEN_TARGET_ARCH)/crypto
>  CPPFLAGS+=-I../tpm_emulator-$(XEN_TARGET_ARCH)
> 
>  $(TARGET): $(OBJS)
> -	ar -cr $@ $(OBJS) $(TPMEMU_OBJS) $(foreach
> obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
> +	ar -cr $@ $(OBJS)
Good catch on the TPMEMU_OBJS, that was a holdover from when the tpm emulator was linked in the same way. I must have overlooked it.

> 
>  $(OBJS): vtpm_manager.h
> 
> diff --git a/stubdom/vtpmmgr/Makefile b/stubdom/vtpmmgr/Makefile index
> e41c261..af13b39 100644
> --- a/stubdom/vtpmmgr/Makefile
> +++ b/stubdom/vtpmmgr/Makefile
> @@ -11,9 +11,6 @@
> 
>  XEN_ROOT=../..
> 
> -PSSL_DIR=../polarssl-$(XEN_TARGET_ARCH)/library
> -PSSL_OBJS=aes.o sha1.o entropy.o ctr_drbg.o bignum.o sha4.o havege.o
> timing.o entropy_poll.o padlock.o
> -
>  TARGET=vtpmmgr.a
>  OBJS=vtpmmgr.o vtpm_cmd_handler.o vtpm_storage.o init.o tpmrsa.o tpm.o
> log.o
> 
> @@ -22,7 +19,7 @@ CFLAGS+=-Wno-declaration-after-statement -Wno-
> unused-label
> 
>  build: $(TARGET)
>  $(TARGET): $(OBJS)
> -	ar -rcs $@ $^ $(foreach obj,$(PSSL_OBJS),$(PSSL_DIR)/$(obj))
> +	ar -rcs $@ $^
> 
>  clean:
>  	rm -f $(TARGET) $(OBJS)
> --
> 1.7.2.5
> 
> 

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH] vtpmmgr: fix build on 32-bit
  2013-01-21 18:27               ` Fioravante, Matthew E.
@ 2013-01-24 13:07                 ` Ian Campbell
  0 siblings, 0 replies; 17+ messages in thread
From: Ian Campbell @ 2013-01-24 13:07 UTC (permalink / raw)
  To: Fioravante, Matthew E.
  Cc: Samuel Thibault, Keir (Xen.org), Ian Jackson,
	xen-devel@lists.xen.org

On Mon, 2013-01-21 at 18:27 +0000, Fioravante, Matthew E. wrote:

> > I've already pushed the padlock.o fix but here is the updated "use -lpolarssl"
> > patch.
> Looks good. If it compiles for you then:
> Acked by: Matthew Fioravante <matthew.fioravante@jhuapl.edu>

Applied, thanks.

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2013-01-24 13:07 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-19 12:41 [xen-unstable test] 15136: regressions - FAIL xen.org
2013-01-19 12:52 ` Ian Campbell
2013-01-21 13:13   ` Ian Campbell
2013-01-21 13:19     ` [PATCH] vtpmmgr: fix build on 32-bit Ian Campbell
2013-01-21 13:22       ` Ian Campbell
2013-01-21 13:24         ` Samuel Thibault
2013-01-21 13:42           ` Ian Campbell
2013-01-21 14:33             ` Fioravante, Matthew E.
2013-01-21 14:51               ` Ian Campbell
2013-01-21 15:08                 ` Fioravante, Matthew E.
2013-01-21 15:12                   ` Ian Campbell
2013-01-21 15:14       ` Fioravante, Matthew E.
2013-01-21 16:16         ` Ian Campbell
2013-01-21 16:17           ` Fioravante, Matthew E.
2013-01-21 16:26             ` Ian Campbell
2013-01-21 18:27               ` Fioravante, Matthew E.
2013-01-24 13:07                 ` Ian Campbell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).