This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/14374] New: fxstatat compilation botched on sparc64


http://sourceware.org/bugzilla/show_bug.cgi?id=14374

             Bug #: 14374
           Summary: fxstatat compilation botched on sparc64
           Product: glibc
           Version: 2.15
            Status: NEW
          Severity: normal
          Priority: P2
         Component: libc
        AssignedTo: unassigned@sourceware.org
        ReportedBy: jengelh@medozas.de
                CC: drepper.fsp@gmail.com
    Classification: Unclassified


Compiling glibc-2.15-725b8ee08aff (because that is what openSUSE 12.2 has) on
sparc64 (-m64) throws a significant warning that causes rpmlint to abort the
entire rpm build in the Build Service.

1. On sparc64, glibc-2.15 attempts to compile wordsize-64/fxstatat.c, which I
think is wrong. It should do sysdeps/unix/sysv/linux/sparc/sparc64/fxstatat.c
instead.

2. Because it attempts to do sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c
instead, it runs into lots of problems: __NR_newfstatat is not defined, because
sparc* does not even have that syscall.

ares:/usr/include> grep -r __NR_newfstatat .
./asm-powerpc/unistd.h:#define __NR_newfstatat          291
./asm-ia64/unistd.h:#define __NR_newfstatat                     1286
./asm-generic/unistd.h:#define __NR_newfstatat 1054
./asm-generic/unistd.h:__SYSCALL(__NR_newfstatat, sys_newfstatat)
./asm-generic/unistd.h:#define __NR_newfstatat __NR3264_fstatat
./asm-x86/unistd_64.h:#define __NR_newfstatat 262
./asm-x86/unistd_x32.h:#define __NR_newfstatat (__X32_SYSCALL_BIT + 262)
./asm-s390/unistd.h:#define __NR_newfstatat             293
(Headers are from kernel 3.4.0)


gcc -m64 interp.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline
-Wwrite-strings -fcall-used-g6 -fmerge-all-constants -g -mcpu=ultrasparc -mvis
-Wstrict-prototypes -fcall-used-g6  -fPIC
-D'RUNTIME_LINKER="/lib64/ld-linux.so.2"' -DNOT_IN_libc=1     -I../include
-I/home/abuild/rpmbuild/BUILD/glibc-2.15/cc-base/elf
-I/home/abuild/rpmbuild/BUILD/glibc-2.15/cc-base -I../sysdeps/sparc/sparc64/elf
-I../sysdeps/sparc/elf -I../nptl/sysdeps/unix/sysv/linux/sparc/sparc64
-I../sysdeps/unix/sysv/linux/sparc/sparc64
-I../sysdeps/unix/sysv/linux/wordsize-64
-I../nptl/sysdeps/unix/sysv/linux/sparc -I../sysdeps/unix/sysv/linux/sparc
-I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread
-I../sysdeps/pthread -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu
-I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet
-I../nptl/sysdeps/unix/sysv -I../sysdeps/unix/sysv -I../sysdeps/unix/sparc
-I../nptl/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix
-I../sysdeps/sparc/sparc64/fpu -I../sysdeps/sparc/sparc64/multiarch
-I../nptl/sysdeps/sparc/sparc64 -I../sysdeps/sparc/sparc64
-I../sysdeps/wordsize-64 -I../sysdeps/ieee754/ldbl-128
-I../sysdeps/ieee754/dbl-64/wordsize-64 -I../sysdeps/ieee754/dbl-64
-I../sysdeps/ieee754/flt-32 -I../sysdeps/sparc/sparc64/soft-fp
-I../sysdeps/sparc/fpu -I../nptl/sysdeps/sparc -I../sysdeps/sparc
-I../sysdeps/ieee754 -I../sysdeps/generic/elf -I../sysdeps/generic -I../nptl 
-I.. -I../libio -I.  -D_LIBC_REENTRANT -include ../include/libc-symbols.h 
-DPIC -DSHARED      -o
/home/abuild/rpmbuild/BUILD/glibc-2.15/cc-base/elf/interp.os -MD -MP -MF
/home/abuild/rpmbuild/BUILD/glibc-2.15/cc-base/elf/interp.os.dt -MT
/home/abuild/rpmbuild/BUILD/glibc-2.15/cc-base/elf/interp.os  

In file included from
../sysdeps/unix/sysv/linux/wordsize-64/dl-fxstatat64.c:6:0:
../sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c: In function '__fxstatat':
../sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c:46:7: warning: unused
variable 'res' [-Wunused-variable]
../sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c:111:1: warning: control
reaches end of non-void function [-Wreturn-type]

Since __NR_newfstatat is undefined in that translation unit, this leads to no
code being emitted that would return a value.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]