qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] git master build failure


From: Laszlo Ersek
Subject: Re: [Qemu-devel] git master build failure
Date: Wed, 15 Jun 2016 14:35:16 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1.1

On 06/15/16 12:08, Mark Cave-Ayland wrote:
> On 15/06/16 10:48, Andrew Jones wrote:
> 
>> On Wed, Jun 15, 2016 at 08:14:18AM +0100, Mark Cave-Ayland wrote:
>>> Hi Peter,
>>>
>>> Just to let you know that after pulling git master
>>> (49237b856ae58ee7955be0b959c504c51b014f20) I see the following build
>>> failure here:
>>
>> Just pulled and successfully compiled,
>>   configure --target-list=aarch64-softmmu
>>
>> And, I'm not sure how it's possible to this warning below. See below
>>
>>>
>>> cc -I/home/build/src/qemu/git/qemu/tcg
>>> -I/home/build/src/qemu/git/qemu/tcg/i386
>>> -I/home/build/src/qemu/git/qemu/linux-headers
>>> -I/home/build/src/qemu/git/qemu/linux-headers -I.
>>> -I/home/build/src/qemu/git/qemu -I/home/build/src/qemu/git/qemu/include
>>> -I/home/build/src/qemu/git/qemu/hw/arm -Ihw/arm -I/usr/include/pixman-1
>>>   -I/home/build/src/qemu/git/qemu/dtc/libfdt -Werror -m64 -D_GNU_SOURCE
>>> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
>>> -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes
>>> -fno-strict-aliasing -fno-common  -Wendif-labels -Wmissing-include-dirs
>>> -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self
>>> -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition
>>> -Wtype-limits -fstack-protector-all -I/usr/include/p11-kit-1
>>> -I/usr/include/libpng12    -I../linux-headers -I..
>>> -I/home/build/src/qemu/git/qemu/target-arm -DNEED_CPU_H
>>> -I/home/build/src/qemu/git/qemu/include -MMD -MP -MT hw/arm/vexpress.o
>>> -MF hw/arm/vexpress.d -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -pthread
>>> -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
>>> -g   -c -o hw/arm/vexpress.o /home/build/src/qemu/git/qemu/hw/arm/vexpress.c
>>> cc -I/home/build/src/qemu/git/qemu/tcg
>>> -I/home/build/src/qemu/git/qemu/tcg/i386
>>> -I/home/build/src/qemu/git/qemu/linux-headers
>>> -I/home/build/src/qemu/git/qemu/linux-headers -I.
>>> -I/home/build/src/qemu/git/qemu -I/home/build/src/qemu/git/qemu/include
>>> -I/home/build/src/qemu/git/qemu/hw/arm -Ihw/arm -I/usr/include/pixman-1
>>>   -I/home/build/src/qemu/git/qemu/dtc/libfdt -Werror -m64 -D_GNU_SOURCE
>>> -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes
>>> -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes
>>> -fno-strict-aliasing -fno-common  -Wendif-labels -Wmissing-include-dirs
>>> -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self
>>> -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition
>>> -Wtype-limits -fstack-protector-all -I/usr/include/p11-kit-1
>>> -I/usr/include/libpng12    -I../linux-headers -I..
>>> -I/home/build/src/qemu/git/qemu/target-arm -DNEED_CPU_H
>>> -I/home/build/src/qemu/git/qemu/include -MMD -MP -MT hw/arm/virt.o -MF
>>> hw/arm/virt.d -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -pthread
>>> -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include
>>> -g   -c -o hw/arm/virt.o /home/build/src/qemu/git/qemu/hw/arm/virt.c
>>> /home/build/src/qemu/git/qemu/hw/arm/virt.c: In function
>>> ‘virt_2_6_class_init’:
>>> /home/build/src/qemu/git/qemu/hw/arm/virt.c:1509:5: error: array
>>> subscript is above array bounds [-Werror=array-bounds]
>>
>> hw/arm/virt.c:1509 is SET_MACHINE_COMPAT(mc, VIRT_COMPAT_2_6), and
>> VIRT_COMPAT_2_6 is HW_COMPAT_2_6 (which is currently nothing).
>>
>> SET_MACHINE_COMPAT is
>>
>> #define SET_MACHINE_COMPAT(m, COMPAT) \
>>     do {                              \
>>         int i;                        \
>>         static GlobalProperty props[] = {       \
>>             COMPAT                              \
>>             { /* end of list */ }               \
>>         };                                      \
>>         if (!m->compat_props) { \
>>             m->compat_props = g_array_new(false, false, sizeof(void *));
>> \
>>         } \
>>         for (i = 0; props[i].driver != NULL; i++) {    \
>>             GlobalProperty *prop = &props[i];          \
>>             g_array_append_val(m->compat_props, prop); \
>>         }                                              \
>>     } while (0)
>>
>>
>> so props[] is { {} }, which means props[0].driver == NULL. 0 should
>> be a valid subscript, and we shouldn't try any others.
>>
>> Are you using special config options or a special compiler?
>>
>> Thanks,
>> drew
> 
> Hi Andrew,
> 
> Is that from a clean clone of the repository? I wonder if a change to a
> generated file isn't being picked up somewhere by "make distclean". My
> standard build script is this:
> 
> make distclean
> './configure' '--target-list=x86_64-softmmu sparc64-softmmu
> sparc-softmmu ppc-softmmu arm-softmmu' '--disable-pie'
> 
> System is standard Debian wheezy on amd64.

According to <https://packages.debian.org/wheezy/gcc>, your gcc is 4.7.2
based (4:4.7.2-1). With a simple google search, I found the following
gcc bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45978
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53198
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56273
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56456

My guess is that Debian has not backported the upstream fix(es) for this
gcc bug. In particular, if you look at gcc bug #53198 referenced above,
it says:

  Known to fail: 4.6.0, 4.6.1, 4.6.2, 4.6.3, 4.7.2, 4.7.4

which includes the Wheezy version (4.7.2). Clicking the "Debian
Changelog" link on the above p.d.o page, I don't see anything that would
indicate that Debian backported the fix.

(For reference, I run RHEL-7.2.z, with gcc version 4.8.5-4. According to
#56273 above, gcc-4.8.4 is also affected, but 4.8.5 is not (see the
Target Milestone field, and the Status field). I built
qemu-system-aarch64 from upstream 49237b856ae5 a few hours ago.)

I suggest that you open a debian bug; I don't see a report for this
issue yet <https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=gcc-4.7>.

Thanks,
Laszlo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]