POV-Ray : Newsgroups : povray.beta-test : Linux Beta 28 segfaults on Slackware and Kubuntu : Re: Linux Beta 28 segfaults on Slackware and Kubuntu Server Time
2 May 2024 18:38:57 EDT (-0400)
  Re: Linux Beta 28 segfaults on Slackware and Kubuntu  
From: geep999
Date: 28 Aug 2008 10:05:00
Message: <web.48b6aab9cfc4a246b6fda8bd0@news.povray.org>
1/ I still get segfaults rendering m_textures.ini (see below) in a different
environment, after changing from Slackware 12.0 to Slackware 12.1,
using official beta 28 source and precompiled repository
(http://repository.slacky.eu/slackware-12.1)
versions of libraries: boost-1.33.1 icu-3.6 ilmbase-1.0.1 openexr-1.6.1

But beta 25b renders m_textures.ini fine using exactly the same ./configure
options and installed libraries.

gcc (GCC) 4.2.3, Kernel: 2.6.24.5-smp #1 SMP

.../configure \
--with-boost-thread=boost_thread-mt \
--disable-optimiz \
--disable-optimiz-arch \
--enable-debug \
COMPILED_BY="Slackware 12.1 Repository: boost-1.33.1-i686-3as icu-3.6-i486-1sl
ilmbase-1.0.1-i486-2sl openexr-1.6.1-i486-2sl"

2/ Nicolas Calimet <pov### [at] freefr> wrote:
>
>  I'd say you face a problem with this version of Boost.  Moreover,
> as said in the INSTALL file, you should avoid using POV's --with-boost-src
> configure option *especially* with Boost 1.34.1 (actually I don't even
> understand how you managed to get things compiled this way).  Better try
I had patched the 1.34.1 source as per http://boost.sourceforge.net/
December 19, 2007 - Critical Bug in Function Library

    * Boost.Function in Boost 1.34.x has a bug that affects the construction of
Boost.Function objects in a multi-threaded context. The problem has been fixed
in the Boost trunk and for the upcoming Boost 1.35.x. To patch your Boost
1.34.x, copy the files function_base.hpp and function_template.hpp into the
Boost directory boost/function.
> using a precompiled lib (possibly from package repositeries) or an earlier
> Boost version, e.g. 1.33.1.
>
>  - NC

3/ I'd previously had similar segfaults on Kubuntu with boost 1.34.1
downloaded from Kubuntu repository, using --with-boost-thread=boost_thread-mt
configure option.

4/ Am I still the only person to see these segfaults on Linux?
I've now tried installing on 3 different Linuxes and always get the
same segfaults. I suppose I could be making the same mistake in all 3 OS's,
but as the last test only involved compiling Povray (./configure shown above)
and installing 4 pre-compiled packages (using simple Slackware command
"installpkg packagename.tgz") the opportunity for even me to screw-up is
limited!

Salutations,
Peter

(gdb) bt
#0  0xb78e9c03 in malloc_consolidate () from /lib/libc.so.6
#1  0xb78ebd3a in _int_malloc () from /lib/libc.so.6
#2  0xb78edb2d in malloc () from /lib/libc.so.6
#3  0x08226212 in pov::pov_malloc (size=3072, file=0x82314f2
"bounding/bbox.cpp", line=134,
    msg=0x8231504 "priority queue") at pov_mem.cpp:430
#4  0x080da6b4 in PriorityQueue (this=0xb5e297c4) at bounding/bbox.cpp:134
#5  0x0819b600 in Trace (this=0xb5e29790, sd=@0xb67b7a7c, td=0xb5e32f60, mtl=3,
adcb=3.9215686274509805e-05, qf=372,
    cf=@0xb5e29760, mf=@0xb5e2984c, rf=@0xb5e2978c) at render/trace.cpp:143
#6  0x0817c7a0 in RadiosityFunction (this=0xb5e2978c, sd=@0xb67b7b20,
td=0xb5e32f60, mtl=5, adcb=0.0039215686274509803,
    rs=@0xb5e01110, rc=@0xb5e02414, cf=@0xb5e29760, ft=true) at
lighting/radiosity.cpp:241
#7  0x081a5f67 in TraceTask (this=0xb5e293c0, vd=0xb5e022a8, tm=1, js=1,
aat=0.30000001192092896, aad=3, ps=0, psc=false,
    final=true) at render/tracetask.cpp:294
#8  0x080bbf1c in pov::View::StartRender (this=0xb5e02218,
renderOptions=@0xb67b80dc) at scene/view.cpp:813
#9  0x080a42de in pov::RenderBackend::StartRender (this=0xb67b8248,
msg=@0xb67b80dc) at control/renderbackend.cpp:602
#10 0x080a8777 in
POVMS_MessageReceiver::MemberHandlerOO<pov::RenderBackend>::Call
(this=0xb5e00728, msg=@0xb67b80dc,
    result=@0xb67b80ec, mode=1) at ../../source/base/povmscpp.h:382
#11 0x081f2b2a in POVMS_MessageReceiver::ReceiveHandler (msg=0xb67b81ec,
result=0xb67b81e0, mode=1,
    privatedataptr=0xb67b8248) at povmscpp.cpp:1774
#12 0x081f009f in POVMS_Receive (contextref=0x82fbbf0, msg=0xb67b81ec,
result=0xb67b81e0, mode=1) at povms.cpp:944
#13 0x081f1353 in POVMS_ProcessMessages (contextref=0x82fbbf0, blocking=true,
yielding=true) at povms.cpp:688
#14 0x080a0afc in MainThreadFunction () at povray.cpp:540
#15 0x080a15fa in boost::_bi::list0::operator()<void (*)(), boost::_bi::list0>
(this=0x82fb62c, f=@0x82fb628)
    at /usr/include/boost/bind.hpp:179
#16 0x080a162e in boost::_bi::bind_t<void, void (*)(),
boost::_bi::list0>::operator() (this=0x82fb628)
    at /usr/include/boost/bind/bind_template.hpp:20
#17 0x080a164b in
boost::detail::function::void_function_obj_invoker0<boost::_bi::bind_t<void,
void (*)(), boost::_bi::list0>, void>::invoke (function_obj_ptr={obj_ptr =
0x82fb628, const_obj_ptr = 0x82fb628, func_ptr = 0x82fb628, data = "("})
    at /usr/include/boost/function/function_template.hpp:136
#18 0x081b54a2 in boost::function0<void, std::allocator<boost::function_base>
>::operator() (this=0xb67b83a0)
    at /usr/include/boost/function/function_template.hpp:576
#19 0xb7aea5d2 in ?? () from /usr/lib/libboost_thread-mt.so.1.33.1
#20 0xb7e89383 in start_thread () from /lib/libpthread.so.0
#21 0xb795605e in clone () from /lib/libc.so.6
(gdb)


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.