bug-libunistring
[Top][All Lists]
Advanced

[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



reply via email to

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