stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Sebor (JIRA)" <j...@apache.org>
Subject [jira] Created: (STDCXX-498) [Intel C++ 8.1/SuSE/AMD64] std::time_put thread safety problem
Date Tue, 24 Jul 2007 17:04:33 GMT
[Intel C++ 8.1/SuSE/AMD64] std::time_put thread safety problem
--------------------------------------------------------------

                 Key: STDCXX-498
                 URL: https://issues.apache.org/jira/browse/STDCXX-498
             Project: C++ Standard Library
          Issue Type: Bug
          Components: 22. Localization
    Affects Versions: 4.1.3
         Environment: Intel C++ 8.1/SuSE/AMD64
            Reporter: Martin Sebor


Moved from Rogue Wave Bugzilla: http://bugzilla.cvo.roguewave.com/show_bug.cgi?id=1708 (note
the name of the test is now 22.locale.time.put.mt.cpp).

tests/stdlib/locale/time_put_mt seems to have a thread safety issue
where a local name is corrupted and causes the test to fail.

Stack Trace using icc8.1 on sunburst (amd64)
> (gdb) r -O/dev/tty
> Starting program: /build/sebor/icc-8.1-15S/tests/22_time_put_mt 
> -O/dev/tty [Thread debugging using libthread_db enabled] [New Thread 
> 182894218016 (LWP 27151)] ## -------------------------------
> ## TestTag     = std::time_put thread safety
> ## CompilerId  = Intel C++, __INTEL_COMPILER = 810, 
> __INTEL_COMPILER_BUILD_DATE = 20050406, __EDG_VERSION__ = 303 with
Rogue 
> Wave C++ Standard Library, _RWSTD_VER = 0x04010000
> ## MachineId   = x86_64/LP64 running linux-elf 2.4.20 with glibc 2.3
> ## Remark      =
> 
> /build/sebor/dev/stdlib/tests/src/test.cpp:916: executing "locale -a >
> /tmp/tmpfile-J00vyh"
> Detaching after fork from child process 27156.
> 
> ## RunTag      = using the following 4 locales: "aa_DJ.iso88591", 
> "be_BY", "ca_ES", "da_DK"
> [New Thread 1084229984 (LWP 27158)]
> T0 [New Thread 1094719840 (LWP 27159)]
> T1 [New Thread 1105209696 (LWP 27160)]
> T2 [New Thread 1115699552 (LWP 27161)]
> T3 T2 T2 T0 T1 T2 T3 T1 T2 T0 T0 T1 T1 T2 T3 T3 T1 T0 T2 T3 T0 T3 T2 
> T2
> T0 T2 T0 T1
> T2 iterated 10000 times, shared counter = 30913 (min: 1, max: 2458)
> [Thread 1105209696 (LWP 27160) exited]
> T1 T0 T3 T1 T3 /build/sebor/dev/stdlib/src/locale_body.cpp:516: 
> __rw::__rw_locale::__rw_locale(const char *): Assertion '!strchr (name, 
> '*')' failed.
> /build/sebor/icc-8.1-15S/tests/22_time_put_mt[0x420851]
> 
> Program received signal SIGABRT, Aborted.
> [Switching to Thread 1115699552 (LWP 27161)] 0x0000003c2392e4dd in 
> raise () from /lib64/tls/libc.so.6
> (gdb) where
> #0  0x0000003c2392e4dd in raise () from /lib64/tls/libc.so.6 #1  
> 0x0000003c2392fc8e in abort () from /lib64/tls/libc.so.6 #2  
> 0x0000000000420930 in __rw::__rw_assert_fail (
>     expr=0x4a6eb0 "!strchr (name, '*')",
>     file=0x4a6e7c "/build/sebor/dev/stdlib/src/locale_body.cpp",
line=516,
>     func=0x4a6e4c "__rw::__rw_locale::__rw_locale(const char *)")
>     at /build/sebor/dev/stdlib/src/assert.cpp:111
> #3  0x000000000042aaa8 in _ZN4__rw11__rw_localeC9EPKc (this=0x69d430,
>     name=0x428014e0 "@\n\227*")
>     at /build/sebor/dev/stdlib/src/locale_body.cpp:516
> #4  0x000000000042aeed in __rw::__rw_locale::__rw_locale () at
> _locale.h:292
> #5  0x000000000042cedd in __rw::__rw_locale::_C_manage (plocale=0x0,
>     locname=0x428014e0 "@\n\227*")
>     at /build/sebor/dev/stdlib/src/locale_body.cpp:1004
> #6  0x000000000042f154 in __rw::__rw_locale::_C_get_body (one=0x0, 
> other=0x0,
>     locname=0x63e7ef "da_DK", cat=256, pfacet=0x0)
>     at /build/sebor/dev/stdlib/src/locale_combine.cpp:589
> #7  0x000000000042e3bd in _ZNSt6localeC9EPKc (this=0x42801da0,
>     locname=0x63e7ef "da_DK")
>     at /build/sebor/dev/stdlib/src/locale_combine.cpp:646
> #8  0x000000000042e445 in std::locale::locale ()
> #9  0x0000000000403c8f in test_thread::_C_do_run (this=0x7fbfffeb50)
>     at /build/sebor/dev/stdlib/tests/localization/22_time_put_mt.cpp:159
> #10 0x000000000040420b in __rw_run_thread (__arg=0x7fbfffeb50)
>     at threadclass.h:209
> #11 0x0000003c2440613a in start_thread () from
/lib64/tls/libpthread.so.0
> #12 0x0000003c239c52b3 in clone () from /lib64/tls/libc.so.6
> #13 0x0000000000000000 in ?? ()


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message