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>
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. 15130Looks 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.
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 1diff --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
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
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.oThis 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.
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
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
> -----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 MeThe 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
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
> -----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
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.
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
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.
> -----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.
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
> -----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 > >
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.