[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug-libunistring] libunistring 0.9.4 - few minor test failures
From: |
Assaf Gordon |
Subject: |
[bug-libunistring] libunistring 0.9.4 - few minor test failures |
Date: |
Tue, 02 Sep 2014 11:55:35 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0 |
Hello,
-1-
On a Ubuntu 14.04 LTS, test "test-thread_create" fails with GCC 4.8.2 and 4.6.4
, but does not fail with gcc 4.4.7.
The source file "./tests/test-thread_create.c".
It fails in the call to "glthread_create()" which returns non zero (the
returned value is 38, which I guess is ENOSYS).
The definition of "glthread_create" is in "./tests/glthread/thread.h" line 161:
# define glthread_create(THREADP, FUNC, ARG) \
(pthread_in_use () ? pthread_create (THREADP, NULL, FUNC, ARG) : ENOSYS)
pthread_in_use() is defined as:
pragma weak pthread_cancel
# define pthread_in_use() (pthread_cancel != NULL)
The config.h contains:
===
$ grep -E "POSIX|PTHREAD" config.h
#define GNULIB_TEST_MALLOC_POSIX 1
/* Define if the 'malloc' function is POSIX compliant. */
#define HAVE_MALLOC_POSIX 1
#define HAVE_PTHREAD_ATFORK 1
/* Define if the <pthread.h> defines PTHREAD_MUTEX_RECURSIVE. */
#define HAVE_PTHREAD_MUTEX_RECURSIVE 1
/* Define if the POSIX multithreading library has read/write locks. */
#define HAVE_PTHREAD_RWLOCK 1
#define HAVE_RAW_DECL_POSIX_OPENPT 1
/* #undef PTHREAD_IN_USE_DETECTION_HARD */
/* Define if the POSIX multithreading library can be used. */
#define USE_POSIX_THREADS 1
/* Define if references to the POSIX multithreading library should be made
#define USE_POSIX_THREADS_WEAK 1
#ifndef _POSIX_PTHREAD_SEMANTICS
# define _POSIX_PTHREAD_SEMANTICS 1
/* Define to 2 if the system does not provide POSIX.1 features except with
/* #undef _POSIX_1_SOURCE */
/* #undef _POSIX_SOURCE */
===
The binary has:
===
$ nm ./tests/.libs/lt-test-thread_create | grep pthread
w pthread_cancel
w pthread_create
w pthread_join
w pthread_self@@GLIBC_2.2.5
===
-2-
On FreeBSD-10 with clang 3.3, test "test-striconveh" fails:
===
test-striconveh.c:519: assertion 'retval == -1 && errno == EILSEQ' failed
Abort trap (core dumped)
===
-3-
On DilOS (OpenSolaris-like) with only 384MB of RAM, the following test fails:
===
./unicase/test-locale-language.sh: line 3: 89004: Memory fault(coredump)
===
-4-
On FreeBSD 9.3 and 8.4 with GCC 4.2.1, test "test-lock" seems to be stuck in a
loop (taking %100 cpu) but not terminating after a long time.
On FreeBSD 9.3 "top" shows:
===
PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND
57885 gordon 11 20 0 20140K 6216K urdlck 50:49 100.00% test-lock
===
On FreeBSD 8.4 "top" shows:
===
PID USERNAME THR PRI NICE SIZE RES STATE TIME WCPU COMMAND
16567 gordon 11 76 0 14920K 4544K RUN 53:12 100.00% test-lock
===
The file "./tests/test-lock.log" contains:
===
Starting test_lock ... OK
Starting test_rwlock ... OK
Starting test_recursive_lock ... OK
Starting test_once ...
===
I did not investigate further.
Hope this helps,
- Assaf
- [bug-libunistring] libunistring 0.9.4 - few minor test failures,
Assaf Gordon <=