flight 12828 xen-unstable real [real]
http://www.chiark.greenend.org.uk/~xensrcts/logs/12828/
Regressions :-(
Tests which did not succeed and are blocking,
including tests which could not be run:
 build-i386                    4 xen-build                 fail REGR. vs. 12827
 build-i386-oldkern            4 xen-build                 fail REGR. vs. 12827
 build-amd64-oldkern           4 xen-build                 fail REGR. vs. 12827
 build-amd64                   4 xen-build                 fail REGR. vs. 12827
Tests which did not succeed, but are not blocking:
 test-amd64-amd64-xl-pcipt-intel  1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-pv           1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-rhel6hvm-amd  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-pv            1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl-credit2    1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-rhel6hvm-intel  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl            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-xl-multivcpu  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-pair          1 xen-build-check(1)           blocked  n/a
 test-i386-i386-xl-qemuu-winxpsp3  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-win           1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-sedf      1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-win          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-winxpsp3-vcpus1  1 xen-build-check(1)           blocked n/a
 test-amd64-i386-xl-win-vcpus1  1 xen-build-check(1)           blocked  n/a
 test-i386-i386-pv             1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl           1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-sedf-pin  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-win-vcpus1    1 xen-build-check(1)           blocked  n/a
 test-i386-i386-xl             1 xen-build-check(1)           blocked  n/a
 test-i386-i386-pair           1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-pair         1 xen-build-check(1)           blocked  n/a
 test-i386-i386-xl-winxpsp3    1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-winxpsp3  1 xen-build-check(1)           blocked  n/a
 test-amd64-i386-xl-win7-amd64  1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-qemuu-winxpsp3  1 xen-build-check(1)           blocked n/a
 test-amd64-amd64-xl-qemuu-win7-amd64  1 xen-build-check(1)         blocked n/a
 test-amd64-amd64-xl-win7-amd64  1 xen-build-check(1)           blocked  n/a
 test-amd64-amd64-xl-win       1 xen-build-check(1)           blocked  n/a
 test-i386-i386-xl-win         1 xen-build-check(1)           blocked  n/a
 test-i386-i386-win            1 xen-build-check(1)           blocked  n/a
version targeted for testing:
 xen                  27d63b9f111a
baseline version:
 xen                  8a86d841e6d4
jobs:
 build-amd64                                                  fail    
 build-i386                                                   fail    
 build-amd64-oldkern                                          fail    
 build-i386-oldkern                                           fail    
 build-amd64-pvops                                            pass    
 build-i386-pvops                                             pass    
 test-amd64-amd64-xl                                          blocked 
 test-amd64-i386-xl                                           blocked 
 test-i386-i386-xl                                            blocked 
 test-amd64-i386-rhel6hvm-amd                                 blocked 
 test-amd64-i386-qemuu-rhel6hvm-amd                           blocked 
 test-amd64-amd64-xl-qemuu-win7-amd64                         blocked 
 test-amd64-amd64-xl-win7-amd64                               blocked 
 test-amd64-i386-xl-win7-amd64                                blocked 
 test-amd64-i386-xl-credit2                                   blocked 
 test-amd64-amd64-xl-pcipt-intel                              blocked 
 test-amd64-i386-rhel6hvm-intel                               blocked 
 test-amd64-i386-qemuu-rhel6hvm-intel                         blocked 
 test-amd64-i386-xl-multivcpu                                 blocked 
 test-amd64-amd64-pair                                        blocked 
 test-amd64-i386-pair                                         blocked 
 test-i386-i386-pair                                          blocked 
 test-amd64-amd64-xl-sedf-pin                                 blocked 
 test-amd64-amd64-pv                                          blocked 
 test-amd64-i386-pv                                           blocked 
 test-i386-i386-pv                                            blocked 
 test-amd64-amd64-xl-sedf                                     blocked 
 test-amd64-i386-win-vcpus1                                   blocked 
 test-amd64-i386-xl-win-vcpus1                                blocked 
 test-amd64-i386-xl-winxpsp3-vcpus1                           blocked 
 test-amd64-amd64-win                                         blocked 
 test-amd64-i386-win                                          blocked 
 test-i386-i386-win                                           blocked 
 test-amd64-amd64-xl-win                                      blocked 
 test-i386-i386-xl-win                                        blocked 
 test-amd64-amd64-xl-qemuu-winxpsp3                           blocked 
 test-i386-i386-xl-qemuu-winxpsp3                             blocked 
 test-amd64-i386-xend-winxpsp3                                blocked 
 test-amd64-amd64-xl-winxpsp3                                 blocked 
 test-i386-i386-xl-winxpsp3                                   blocked 
------------------------------------------------------------
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.
On Thu, 2012-05-10 at 12:58 +0100, xen.org wrote:> flight 12828 xen-unstable real [real] > http://www.chiark.greenend.org.uk/~xensrcts/logs/12828/ > > Regressions :-( > > Tests which did not succeed and are blocking, > including tests which could not be run: > build-i386 4 xen-build fail REGR. vs. 12827gcc -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .img2qcow.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -Werror -g -Wno-unused -fno-strict-aliasing -I../include -I../drivers -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/libxc -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/include -D_GNU_SOURCE -DUSE_NFS_LOCKS -fPIC -c -o img2qcow.o img2qcow.c gcc -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .qcow2raw.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -Werror -g -Wno-unused -fno-strict-aliasing -I../include -I../drivers -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/libxc -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/include -D_GNU_SOURCE -DUSE_NFS_LOCKS -fPIC -c -o qcow2raw.o qcow2raw.c cc1: warnings being treated as errors block-remus.c: In function ''ramdisk_flush'': block-remus.c:508: error: ''buf'' may be used uninitialized in this function make[5]: *** [block-remus.o] Error 1 make[5]: *** Waiting for unfinished jobs.... I presume this is 25289:27d63b9f111a "blktap2: Do not build with -O0" or one of the followup patches? Ah:> version targeted for testing: > xen 27d63b9f111aSo before all the fixups -- I suppose this will pass on the next run.
On Thu, 2012-05-10 at 14:01 +0100, Ian Campbell wrote:> On Thu, 2012-05-10 at 12:58 +0100, xen.org wrote: > > flight 12828 xen-unstable real [real] > > http://www.chiark.greenend.org.uk/~xensrcts/logs/12828/ > > > > Regressions :-( > > > > Tests which did not succeed and are blocking, > > including tests which could not be run: > > build-i386 4 xen-build fail REGR. vs. 12827 > > gcc -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .img2qcow.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -Werror -g -Wno-unused -fno-strict-aliasing -I../include -I../drivers -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/libxc -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/include -D_GNU_SOURCE -DUSE_NFS_LOCKS -fPIC -c -o img2qcow.o img2qcow.c > gcc -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .qcow2raw.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -Werror -g -Wno-unused -fno-strict-aliasing -I../include -I../drivers -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/libxc -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/include -D_GNU_SOURCE -DUSE_NFS_LOCKS -fPIC -c -o qcow2raw.o qcow2raw.c > cc1: warnings being treated as errors > block-remus.c: In function ''ramdisk_flush'': > block-remus.c:508: error: ''buf'' may be used uninitialized in this function > make[5]: *** [block-remus.o] Error 1 > make[5]: *** Waiting for unfinished jobs.... > > I presume this is 25289:27d63b9f111a "blktap2: Do not build with -O0" or > one of the followup patches? > > Ah: > > > version targeted for testing: > > xen 27d63b9f111a > > So before all the fixups -- I suppose this will pass on the next run.Keir says this isn''t one he has fixed. I can''t repro it either (and I run Squeeze, just like the build system) but by inspection this ought to solve it. 8<-------------------------------------- # HG changeset patch # User Ian Campbell <ian.campbell@citrix.com> # Date 1336655664 -3600 # Node ID 6d45fbdca09be60726eb7043a42dbac552e202e0 # Parent bc8630bc68025bdee747ebe707b764e323914fd6 blktap2/remus: initialise variable. gcc seems to not be able to spot that it is always initialised, based on the complexity of merge_requests'' error handling I don''t blame it. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> diff -r bc8630bc6802 -r 6d45fbdca09b tools/blktap2/drivers/block-remus.c --- a/tools/blktap2/drivers/block-remus.c Thu May 10 14:07:31 2012 +0100 +++ b/tools/blktap2/drivers/block-remus.c Thu May 10 14:14:24 2012 +0100 @@ -533,6 +533,7 @@ static int ramdisk_flush(td_driver_t *dr i++; batchlen = sectors[i-1] - base + 1; + buf = NULL; j = merge_requests(&s->ramdisk, base, batchlen, &buf); if (j) {
On Thu, May 10, Ian Campbell wrote:> On Thu, 2012-05-10 at 14:01 +0100, Ian Campbell wrote: > > On Thu, 2012-05-10 at 12:58 +0100, xen.org wrote: > > > flight 12828 xen-unstable real [real] > > > http://www.chiark.greenend.org.uk/~xensrcts/logs/12828/ > > > > > > Regressions :-( > > > > > > Tests which did not succeed and are blocking, > > > including tests which could not be run: > > > build-i386 4 xen-build fail REGR. vs. 12827 > > > > gcc -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .img2qcow.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -Werror -g -Wno-unused -fno-strict-aliasing -I../include -I../drivers -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/libxc -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/include -D_GNU_SOURCE -DUSE_NFS_LOCKS -fPIC -c -o img2qcow.o img2qcow.c > > gcc -O1 -fno-omit-frame-pointer -m64 -g -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -D__XEN_TOOLS__ -MMD -MF .qcow2raw.o.d -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -fno-optimize-sibling-calls -Werror -g -Wno-unused -fno-strict-aliasing -I../include -I../drivers -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/libxc -I/home/osstest/build.12828.build-amd64/xen-unstable/tools/blktap2/drivers/../../../tools/include -D_GNU_SOURCE -DUSE_NFS_LOCKS -fPIC -c -o qcow2raw.o qcow2raw.c > > cc1: warnings being treated as errors > > block-remus.c: In function ''ramdisk_flush'': > > block-remus.c:508: error: ''buf'' may be used uninitialized in this function > > make[5]: *** [block-remus.o] Error 1 > > make[5]: *** Waiting for unfinished jobs.... > > > > I presume this is 25289:27d63b9f111a "blktap2: Do not build with -O0" or > > one of the followup patches? > > > > Ah: > > > > > version targeted for testing: > > > xen 27d63b9f111a > > > > So before all the fixups -- I suppose this will pass on the next run. > > Keir says this isn''t one he has fixed. I can''t repro it either (and I > run Squeeze, just like the build system) but by inspection this ought to > solve it.Looks like a compiler issue, since merge_requests() seems to correctly return a non-null value when it does not touch the passed pointer to buf. So your simple change looks like a correct workaround. In general I think Makefiles should rather not mess with -W* and -O* options like this, and use only the global flags if possible. Olaf
xen.org writes ("[xen-unstable test] 12828: regressions -
FAIL"):> Tests which did not succeed and are blocking,
> including tests which could not be run:
>  build-i386                    4 xen-build              fail REGR. vs.
12827
I have just committed the patch below to fix this.
Ian.
# HG changeset patch
# User Ian Jackson <Ian.Jackson@eu.citrix.com>
# Date 1336656374 -3600
# Node ID 60064411a8a9b68136e16ae5abdd98410745d5c7
# Parent  81088df89e80b960ba922e4b82fcc504d86cb499
blktap2: Fix another uninitialised value error
gcc  -O1 -fno-omit-frame-pointer -m32 -march=i686 -g -fno-strict-aliasing
-std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement  
-D__XEN_TOOLS__ -MMD -MF .block-remus.o.d -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-fno-optimize-sibling-calls -mno-tls-direct-seg-refs -Werror -g -Wno-unused
-fno-strict-aliasing -I../include -I../drivers
-I/home/osstest/build.12828.build-i386/xen-unstable/tools/blktap2/drivers/../../../tools/libxc
-I/home/osstest/build.12828.build-i386/xen-unstable/tools/blktap2/drivers/../../../tools/include
-D_GNU_SOURCE -DUSE_NFS_LOCKS  -c -o block-remus.o block-remus.c
block-remus.c: In function ''ramdisk_flush'':
block-remus.c:508: error: ''buf'' may be used uninitialized in
this function
make[5]: *** [block-remus.o] Error 1
This is because gcc can see that merge_requests doesn''t always set
*mergedbuf but gcc isn''t able to prove that it always does so if
merge_requests returns 0 and that in that case the value of
ramdisk_flush::buf isn''t used.
This is too useful a warning to disable, despite the occasional false
positive of this form.  The conventional approach is to suppress the
warning by explicitly initialising the variable to 0.
This has just come to light because 25275:27d63b9f111a reenabled
optimisation for this area of code, and gcc''s data flow analysis
(which is required to trigger the uninitialised variable warning) only
occurs when optimisation is turned on.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
diff -r 81088df89e80 -r 60064411a8a9 tools/blktap2/drivers/block-remus.c
--- a/tools/blktap2/drivers/block-remus.c	Thu May 10 12:19:16 2012 +0100
+++ b/tools/blktap2/drivers/block-remus.c	Thu May 10 14:26:14 2012 +0100
@@ -505,7 +505,7 @@ fail:
 static int ramdisk_flush(td_driver_t *driver, struct tdremus_state* s)
 {
 	uint64_t* sectors;
-	char* buf;
+	char* buf = NULL;
 	uint64_t base, batchlen;
 	int i, j, count = 0;
Ian Campbell writes ("Re: [Xen-devel] [xen-unstable test] 12828:
regressions - FAIL"):> I presume this is 25289:27d63b9f111a "blktap2: Do not build with
-O0" or
> one of the followup patches?
> 
> Ah:
> 
> > version targeted for testing:
> >  xen                  27d63b9f111a
> 
> So before all the fixups -- I suppose this will pass on the next run.
I repro''d this particular failure in 25280:81088df89e80 and have
therefore committed a fix.  I guess Keir''s compiler is different to
mine.
Ian.
On Thu, 2012-05-10 at 14:28 +0100, Ian Jackson wrote:> Ian Campbell writes ("Re: [Xen-devel] [xen-unstable test] 12828: regressions - FAIL"): > > I presume this is 25289:27d63b9f111a "blktap2: Do not build with -O0" or > > one of the followup patches? > > > > Ah: > > > > > version targeted for testing: > > > xen 27d63b9f111a > > > > So before all the fixups -- I suppose this will pass on the next run. > > I repro''d this particular failure in 25280:81088df89e80 and have > therefore committed a fix. I guess Keir''s compiler is different to > mine.He runs Fedora IIRC. I tried to repro on Squeeze though and couldn''t -- I expected you and the test system to also be running Squeeze. Ian.
Ian Campbell writes ("Re: [Xen-devel] [xen-unstable test] 12828:
regressions - FAIL"):> I tried to repro on Squeeze though and couldn''t -- I expected you
and
> the test system to also be running Squeeze.
Well, who knows :-).  Anyway my fix is in staging now.  (And I think I
prefer mine, initialising the variable in its definition, to yours,
which assigns NULL to it at some midpoint.)
Ian.
On Thu, 2012-05-10 at 14:32 +0100, Ian Jackson wrote:> Ian Campbell writes ("Re: [Xen-devel] [xen-unstable test] 12828: regressions - FAIL"): > > I tried to repro on Squeeze though and couldn''t -- I expected you and > > the test system to also be running Squeeze. > > Well, who knows :-). Anyway my fix is in staging now. (And I think I > prefer mine, initialising the variable in its definition, to yours, > which assigns NULL to it at some midpoint.)Yeah, I''m happy with yours too. Ian.