<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>5871</bug_id>
          
          <creation_ts>2014-02-24 16:03:13 +0000</creation_ts>
          <short_desc>eglibc build failure on several ppc machines</short_desc>
          <delta_ts>2014-04-08 02:35:26 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>BSPs</product>
          <component>bsps-meta-fsl-ppc</component>
          <version>1.6</version>
          <rep_platform>Other</rep_platform>
          <op_sys>ppc</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>Medium+</priority>
          <bug_severity>critical</bug_severity>
          <target_milestone>1.6 M4</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tudor Florea">tudor.florea</reporter>
          <assigned_to name="Zhenhua Luo">zhenhua.luo</assigned_to>
          <cc>b40290</cc>
    
    <cc>jessica.zhang</cc>
    
    <cc>raj.khem</cc>
    
    <cc>richard.purdie</cc>
    
    <cc>sgw</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>No (bug/feature does not impact docs)</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>40642</commentid>
    <comment_count>0</comment_count>
    <who name="Tudor Florea">tudor.florea</who>
    <bug_when>2014-02-24 16:03:13 +0000</bug_when>
    <thetext>Below is one example of the build fail:
bitbake eglibc
Loading cache: 100% |############################################################################################################| ETA:  00:00:00
Loaded 1255 entries from dependency cache.
Parsing recipes: 100% |##########################################################################################################| Time: 00:00:01
Parsing of 877 .bb files complete (789 cached, 88 parsed). 1250 targets, 63 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION        = &quot;1.21.1&quot;
BUILD_SYS         = &quot;x86_64-linux&quot;
NATIVELSBSTRING   = &quot;Ubuntu-12.10&quot;
TARGET_SYS        = &quot;powerpc-poky-linux&quot;
MACHINE           = &quot;p2041rdb&quot;
DISTRO            = &quot;poky&quot;
DISTRO_VERSION    = &quot;1.5+snapshot-20140224&quot;
TUNE_FEATURES     = &quot;m32 fpu-hard ppce500mc&quot;
TARGET_FPU        = &quot;hard&quot;
meta              = &quot;master:8d7dd9ae471ad6154cd4e59152560ff5f24b3c2a&quot;
meta-fsl-ppc      = ...[custom]...
meta-yocto        
meta-yocto-bsp    = &quot;master:8d7dd9ae471ad6154cd4e59152560ff5f24b3c2a&quot;
...
powerpc-enea-linux-gcc  -m32 -mhard-float -mcpu=e500mc --sysroot/path/tobuild_p2041rdb/tmp/sysroots/p2041rdb-tcbootstrap ../sysdeps/ieee754/dbl-64/k_tan.c -c -std=gnu99 -fgnu89-inline  -O2 -Wall -Winline -Wwrite-strings -feliminate-unused-debug-types -fmerge-all-constants -frounding-math -g -mcpu=e500mc -pipe -mhard-float -Wstrict-prototypes -mlong-double-128     -Wno-uninitialized   -D__NO_MATH_INLINES -D__LIBC_INTERNAL_MATH_INLINES -I../include -I/media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/work/ppce500mc-enea-linux/eglibc/2.19-r0/build-powerpc-enea-linux/math  -I/media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/work/ppce500mc-enea-linux/eglibc/2.19-r0/build-powerpc-enea-linux  -I../sysdeps/unix/sysv/linux/powerpc/powerpc32/e500mc/fpu  -I../sysdeps/powerpc/powerpc32/e500mc/fpu  -I../ports/sysdeps/powerpc/powerpc32/e500mc/fpu  -I../sysdeps/unix/sysv/linux/powerpc/powerpc32/e500mc  -I../sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl  -I../sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu  -I../nptl/sysdeps/unix/sysv/linux/powerpc/powerpc32  -I../sysdeps/unix/sysv/linux/powerpc/powerpc32  -I../nptl/sysdeps/unix/sysv/linux/powerpc  -I../sysdeps/unix/sysv/linux/powerpc  -I../nptl/sysdeps/unix/sysv/linux  -I../nptl/sysdeps/pthread  -I../sysdeps/pthread  -I../ports/sysdeps/unix/sysv/linux  -I../sysdeps/unix/sysv/linux  -I../sysdeps/gnu  -I../sysdeps/unix/inet  -I../nptl/sysdeps/unix/sysv  -I../ports/sysdeps/unix/sysv  -I../sysdeps/unix/sysv  -I../sysdeps/unix/powerpc  -I../nptl/sysdeps/unix  -I../ports/sysdeps/unix  -I../sysdeps/unix  -I../sysdeps/posix  -I../ports/sysdeps/powerpc/powerpc32/e500mc  -I../sysdeps/powerpc/powerpc32/e500mc  -I../sysdeps/powerpc/powerpc32/fpu  -I../ports/sysdeps/powerpc/powerpc32  -I../sysdeps/powerpc/powerpc32  -I../sysdeps/wordsize-32  -I../sysdeps/powerpc/fpu  -I../nptl/sysdeps/powerpc  -I../ports/sysdeps/powerpc  -I../sysdeps/powerpc  -I../sysdeps/ieee754/ldbl-128ibm  -I../sysdeps/ieee754/ldbl-opt  -I../sysdeps/ieee754/dbl-64  -I../sysdeps/ieee754/flt-32  -I../sysdeps/ieee754  -I../sysdeps/generic  -I../nptl  -I../ports  -I.. -I../libio -I. -nostdinc -isystem /media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/sysroots/x86_64-linux/usr/lib/ppce500mc-enea-linux.gcc-cross-initial/gcc/powerpc-enea-linux/4.8.2/include -isystem /media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/sysroots/x86_64-linux/usr/lib/ppce500mc-enea-linux.gcc-cross-initial/gcc/powerpc-enea-linux/4.8.2/include-fixed -isystem /media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/sysroots/p2041rdb/usr/include  -D_LIBC_REENTRANT -include ../include/libc-symbols.h   -DNOT_IN_libc=1 -DIS_IN_libm=1 -DIN_LIB=libm    -o /media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/work/ppce500mc-enea-linux/eglibc/2.19-r0/build-powerpc-enea-linux/math/k_tan.o -MD -MP -MF /media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/work/ppce500mc-enea-linux/eglibc/2.19-r0/build-powerpc-enea-linux/math/k_tan.o.dt -MT /media/sdd1/fb/tufl/linux/master-enea15/build_p2041rdb/tmp/work/ppce500mc-enea-linux/eglibc/2.19-r0/build-powerpc-enea-linux/math/k_tan.o
../sysdeps/powerpc/powerpc32/e500mc/fpu/e_sqrt.c: In function &apos;__slow_ieee754_sqrt&apos;:
../sysdeps/powerpc/powerpc32/e500mc/fpu/e_sqrt.c:128:15: error: subscripted value is neither array nor pointer nor vector
       if ((u.l[1] &amp; FE_INVALID) == 0)
               ^
../sysdeps/powerpc/powerpc32/e500mc/fpu/e_sqrt.c:127:20: warning: variable &apos;u&apos; set but not used [-Wunused-but-set-variable]
       fenv_union_t u = { .fenv = fegetenv_register () };
                    ^</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40729</commentid>
    <comment_count>1</comment_count>
    <who name="Saul Wold">sgw</who>
    <bug_when>2014-02-27 09:12:12 +0000</bug_when>
    <thetext>This is more of a FSL issue since you are including the meta-fsl-ppc layer and may set additional flags for compiler/linker.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40760</commentid>
    <comment_count>2</comment_count>
    <who name="Tudor Florea">tudor.florea</who>
    <bug_when>2014-02-27 16:10:41 +0000</bug_when>
    <thetext>This is a ppc specific problem that comes from this patch: pmeta/recipes-core/eglibc/eglibc-2.19/ppc_slow_ieee754_sqrt.patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40780</commentid>
    <comment_count>3</comment_count>
    <who name="Khem Raj">raj.khem</who>
    <bug_when>2014-02-28 03:17:49 +0000</bug_when>
    <thetext>Please test out the patch I posted to contrib tree

http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/misc&amp;id=c5a2242079722ab266f4c9c9cddcd75caa3f1505</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40829</commentid>
    <comment_count>4</comment_count>
    <who name="Zhenhua Luo">zhenhua.luo</who>
    <bug_when>2014-03-03 11:07:19 +0000</bug_when>
    <thetext>(In reply to comment #3)
&gt; Please test out the patch I posted to contrib tree
&gt; 
&gt; http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/
&gt; misc&amp;id=c5a2242079722ab266f4c9c9cddcd75caa3f1505

The build issue goes away after applying the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>40841</commentid>
    <comment_count>5</comment_count>
    <who name="Khem Raj">raj.khem</who>
    <bug_when>2014-03-03 16:30:01 +0000</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Please test out the patch I posted to contrib tree
&gt; &gt; 
&gt; &gt; http://git.openembedded.org/openembedded-core-contrib/commit/?h=kraj/
&gt; &gt; misc&amp;id=c5a2242079722ab266f4c9c9cddcd75caa3f1505
&gt; 
&gt; The build issue goes away after applying the patch.

How about boot and run</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41051</commentid>
    <comment_count>6</comment_count>
    <who name="Chunrong Guo">b40290</who>
    <bug_when>2014-03-11 04:09:43 +0000</bug_when>
    <thetext>apply the patch and test system in p4080ds boards.
the system can boot successfully and gcc work well.


1. Test step:
  (1) tftp 1000000 p4080ds/uImagetest.bin;tftp c00000 p4080ds/uImage.dtb
  (2) setenv bootargs root=/dev/nfs rw nfsroot=10.193.20.117:/home/guo/tool/nfsroot ip=10.193.20.169:10.193.20.117:10.193.20.254:255.255.254.0:p4080ds:eth0:off console=ttyS0,115200 $othbootargs;bootm 1000000 - c00000

the system can boot successfully

2. Test gcc in rootfs:
gcc -lpthread -o main main.c
./main

gcc work well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41112</commentid>
    <comment_count>7</comment_count>
    <who name="Tudor Florea">tudor.florea</who>
    <bug_when>2014-03-12 01:31:12 +0000</bug_when>
    <thetext>Build and boot tested.
There are any testcases available to verify the correctness of __slow_ieee754_sqrt implementation?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41113</commentid>
    <comment_count>8</comment_count>
    <who name="Chunrong Guo">b40290</who>
    <bug_when>2014-03-12 03:10:40 +0000</bug_when>
    <thetext>I will verify &quot;__slow_ieee754_sqrt &quot; by testfloat case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>41153</commentid>
    <comment_count>9</comment_count>
    <who name="Chunrong Guo">b40290</who>
    <bug_when>2014-03-13 02:40:53 +0000</bug_when>
    <thetext>testfloat case work well.

the following information:
root@p1020rdb:~# testfloat -all
Testing int32_to_float32, rounding nearest_even.
372 tests total.
95 tests performed.
No errors found in int32_to_float32, rounding nearest_even.
Testing int32_to_float32, rounding to_zero.
372 tests total.
77 tests performed.
No errors found in int32_to_float32, rounding to_zero.
Testing int32_to_float32, rounding up.
372 tests total.
92 tests performed.
No errors found in int32_to_float32, rounding up.
Testing int32_to_float32, rounding down.
372 tests total.
92 tests performed.
No errors found in int32_to_float32, rounding down.
Testing int32_to_float64.
372 tests total.
0 tests performed.
No errors found in int32_to_float64.
Testing float32_to_int32_round_to_zero.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42297</commentid>
    <comment_count>10</comment_count>
    <who name="Richard Purdie">richard.purdie</who>
    <bug_when>2014-04-04 15:00:11 +0000</bug_when>
    <thetext>This was resolved in master: http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=b130d75c037c3d458817711221a86aa74903b509</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42354</commentid>
    <comment_count>11</comment_count>
    <who name="Chunrong Guo">b40290</who>
    <bug_when>2014-04-08 02:35:26 +0000</bug_when>
    <thetext>the patch is verified.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>