When building using BuildRoot, I get the below errors.
I have not dived into determine what the problem is yet,
but was asking first in case anyone else has experienced
this problem.
Thanks,
Andy
MKDIR lib
CC libm/acosf.os
CC libm/acoshf.os
In file included from ./libpthread/nptl/../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:2:
./include/sys/procfs.h:55:34: error: conflicting types for 'elf_vrreg_t'
} __attribute__ ((aligned (16))) elf_vrreg_t;
^
In file included from ./libpthread/nptl/../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:1:
./include/sys/procfs.h:55:34: error: conflicting types for 'elf_vrreg_t'
} __attribute__ ((aligned (16))) elf_vrreg_t;
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/../nptl_db/thread_db.h:28,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:2:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:153:21: note: previous declaration of 'elf_vrreg_t' was here
typedef __vector128 elf_vrreg_t;
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/../nptl_db/thread_db.h:28,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:1:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:153:21: note: previous declaration of 'elf_vrreg_t' was here
typedef __vector128 elf_vrreg_t;
^
In file included from ./libpthread/nptl/../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:2:
./include/sys/procfs.h:56:21: error: conflicting types for 'elf_vrregset_t'
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
In file included from ./libpthread/nptl/../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:1:
./include/sys/procfs.h:56:21: error: conflicting types for 'elf_vrregset_t'
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/../nptl_db/thread_db.h:28,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:2:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:154:21: note: previous declaration of 'elf_vrregset_t' was here
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/../nptl_db/thread_db.h:28,
from ./libpthread/nptl/descr.h:31,
from ./libpthread/nptl/pthreadP.h:26,
from <stdin>:1:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:154:21: note: previous declaration of 'elf_vrregset_t' was here
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
In file included from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from ./include/bits/libc-lock.h:36,
from ./include/bits/stdio-lock.h:22,
from ./include/bits/uClibc_mutex.h:73,
from ./include/bits/uClibc_stdio.h:83,
from ./include/stdio.h:71,
from <stdin>:2:
./include/sys/procfs.h:55:34: error: conflicting types for 'elf_vrreg_t'
} __attribute__ ((aligned (16))) elf_vrreg_t;
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from ./include/bits/libc-lock.h:36,
from ./include/bits/stdio-lock.h:22,
from ./include/bits/uClibc_mutex.h:73,
from ./include/bits/uClibc_stdio.h:83,
from ./include/stdio.h:71,
from <stdin>:2:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:153:21: note: previous declaration of 'elf_vrreg_t' was here
typedef __vector128 elf_vrreg_t;
^
In file included from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from ./include/bits/libc-lock.h:36,
from ./include/bits/stdio-lock.h:22,
from ./include/bits/uClibc_mutex.h:73,
from ./include/bits/uClibc_stdio.h:83,
from ./include/stdio.h:71,
from <stdin>:2:
./include/sys/procfs.h:56:21: error: conflicting types for 'elf_vrregset_t'
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from ./include/bits/libc-lock.h:36,
from ./include/bits/stdio-lock.h:22,
from ./include/bits/uClibc_mutex.h:73,
from ./include/bits/uClibc_stdio.h:83,
from ./include/stdio.h:71,
from <stdin>:2:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:154:21: note: previous declaration of 'elf_vrregset_t' was here
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
CC libm/asinf.os
CC libm/asinhf.os
CC libm/atan2f.os
make[1]: *** [libpthread/nptl/sysdeps/unix/sysv/linux/lowlevelrobustlock.h] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [libpthread/nptl/sysdeps/unix/sysv/linux/pthread-pi-defines.h] Error 1
make[1]: *** [libpthread/nptl/sysdeps/unix/sysv/linux/lowlevelrwlock.h] Error 1
In file included from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from <stdin>:2:
./include/sys/procfs.h:55:34: error: conflicting types for 'elf_vrreg_t'
} __attribute__ ((aligned (16))) elf_vrreg_t;
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from <stdin>:2:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:153:21: note: previous declaration of 'elf_vrreg_t' was here
typedef __vector128 elf_vrreg_t;
^
In file included from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28:0,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from <stdin>:2:
./include/sys/procfs.h:56:21: error: conflicting types for 'elf_vrregset_t'
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
In file included from /home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/sigcontext.h:13:0,
from ./include/bits/sigcontext.h:30,
from ./include/signal.h:420,
from ./include/sys/procfs.h:26,
from ./libpthread/nptl/sysdeps/powerpc/../../../nptl_db/thread_db.h:28,
from ./libpthread/nptl/sysdeps/powerpc/../../descr.h:31,
from ./libpthread/nptl/sysdeps/powerpc/tls.h:70,
from ./include/tls.h:6,
from <stdin>:2:
/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/linux-headers-3.12.55/usr/include/asm/elf.h:154:21: note: previous declaration of 'elf_vrregset_t' was here
typedef elf_vrreg_t elf_vrregset_t[ELF_NVRREG];
^
make[1]: *** [libpthread/nptl/sysdeps/powerpc/tcb-offsets.h] Error 1
make[1]: Leaving directory `/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/uclibc-1.0.12'
make: *** [/home/akennedy/base_layer/build/rfs/t1010/buildroot-2016.02/output/build/uclibc-1.0.12/.stamp_built] Error 2
Hi,
I'm hitting an issue with the assembler implementation of
pthread_cond_wait() that is used on x86_64 with nptl.
If a thread is canceled while waiting in pthread_cond_wait(), the
condvar seems be left in an inconsistent state. A different thread
first calling pthread_cond_signal()t then gets blocked in
pthread_cond_destroy(). It seems that the function falsely assumes that
there are other waiters in the condvar.
The test program below reproduces the issue, blocking in
pthread_cond_destroy(). Switching to the C implementation on x86_64
fixes the problem here.
A trivial fix would just switch back to the C implementation, basically
revert e928e223fd. That commit, however, states that the generic
implementations are broken on x86_64. I couldn't reproduce that,
though.
Has anybody else seen pthread_cond_wait() issues on x86_64?
Kind regards
Martin
--
#include <pthread.h>
static pthread_mutex_t m;
static pthread_cond_t c;
static pthread_t t;
static volatile int ready;
static void cancelcb(void *arg)
{
pthread_mutex_unlock(&m);
}
static void* threadcb(void *arg)
{
pthread_mutex_lock(&m);
pthread_cleanup_push(cancelcb, NULL);
ready = 1;
while (1)
pthread_cond_wait(&c, &m);
pthread_cleanup_pop(1);
}
int main(int argc, const char *argv[])
{
pthread_mutex_init(&m, NULL);
pthread_cond_init(&c, NULL);
pthread_create(&t, NULL, threadcb, NULL);
while (!ready);
pthread_cancel(t);
pthread_join(t, NULL);
pthread_cond_signal(&c);
pthread_cond_destroy(&c);
pthread_mutex_destroy(&m);
return 0;
}
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "uClibc-ng - small C library for embedded systems".
The branch, master has been updated
via 10f469f6ce1a0c14e4506c42e47e15aa83be2eef (commit)
from 0550ecce0e6580c5ad34e9a9a39ff18ccf8774f9 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 10f469f6ce1a0c14e4506c42e47e15aa83be2eef
Author: Waldemar Brodkorb <wbx(a)uclibc-ng.org>
Date: Wed Jul 6 06:08:51 2016 +0200
bfin: allow to build ldd
-----------------------------------------------------------------------
Summary of changes:
utils/ldd.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/utils/ldd.c b/utils/ldd.c
index f6413c6..5d2c8f4 100644
--- a/utils/ldd.c
+++ b/utils/ldd.c
@@ -35,6 +35,11 @@
#define ELFCLASSM ELFCLASS32
#endif
+#if defined(__bfin__)
+#define MATCH_MACHINE(x) (x == EM_BLACKFIN)
+#define ELFCLASSM ELFCLASS32
+#endif
+
#if defined(__s390__)
#define MATCH_MACHINE(x) (x == EM_S390)
#define ELFCLASSM ELFCLASS32
hooks/post-receive
--
uClibc-ng - small C library for embedded systems
Hi,
I cut a new release today. Highlights are a lot of new contributors
provided a lot of bugfixes. I added support for a new architecture
called NDS32 from Andes Technology.
Test results will follow in a few days here:
http://tests.embedded-test.org/uClibc-ng/
Full changelog:
Alexey Brodkin (2):
ARC: remove deprecated -msoft-float from CFLAGS
libs: install backward compatibility symlinks
Anton Kolesov (1):
ARC: Implement .note.ABI-tag section in crt1.S
Eugeniy Paltsev (2):
Fix hardcoded mmap offset
test: inet: Fix warning messages
Ingo van Lil (1):
inet/resolv: Try search domains first for unqualified names
Jan Vangorp (2):
Fix infinite loop when fopencookie custom write returns 0 on error
Fix return value of fwrite when a 'hard' error occurs
Leonid Lisovskiy (6):
tests: Take in account Makefiles that have meaning for rebuild only.
linuxthreads.old: Fix segfault when pthread_mutex_unlock()
called against unlocked NORMAL mutex.
ARM: nptl: Use generic lowlevellock.c, patch from glibc
ldso: Consistently set & use DL_OPENED flag in both ld.so and libdl
ldso: fix dlsym hang when reloading DSOs
bits/sigset.h: Fix _EXTERN_INLINE redefinition
Lucian Cojocar (1):
bugfix: ARM: memset.S: use unsigned comparisons
Max Filippov (1):
tests: add %ms scanf format test
Nicolas Cavallari (1):
sysconf: Support _SC_(AV)?PHYS_PAGES.
Vineet Gupta (1):
ARC: Enable shared crt1
Vlad Zakharov (1):
test: regex: Make testregex return error count
Waldemar Brodkorb (19):
arm: add non-assembly versions of pthread_spin_lock/pthread_spin_trylock
remove MJN only debug messages
ppc: cleanup unsupported ppc64 code
test: sync with GNU libc
test: quieten some gcc warnings
microblaze: remove unused dead code
ssp: remove SSP legacy code
test: add new mmap tests from glibc
arc: use generic lowlevellock
metag: use generic lowlevellock
xtensa: use generic lowlevellock
add MAINTAINERS information
test: mmap2 is not ARM specific
remove unused Makefiles
or1k: add dummy sys/user.h for strace
argp: select getopt / getopt_long
nds32: add support for new architecture
Add nds32 maintainers
bump for release
Wenzel, Alexander (1):
inet/getaddrinfo: fix AF_V4MAPPED behavior for non IPv6 host resolution
Have fun,
Waldemar