Modify

Opened 5 years ago

Last modified 4 years ago

#12037 new defect

sigsegv with protobuf application (updated boblight) after updating trunk

Reported by: markus.doits@… Owned by: developers
Priority: normal Milestone: Barrier Breaker 14.07
Component: packages Version: Trunk
Keywords: Cc:

Description

I'm getting a sigsegv when trying to run updated boblight with ola support.

Feed for the packages I use is located here: https://github.com/doits/ola-openwrt-feed

Compiling is fine, using ola standalone works, too, but when it comes to boblightd it always crashes right on start with a sigsegv with libprotobuf:

(gdb) bt full
#0  0x77985a4c in memcmp () from /lib/libc.so.0
No symbol table info available.
#1  0x77cd0310 in std::tr1::_Hashtable<std::string, std::pair<std::string const, google::protobuf::FieldDescriptorProto_Type>, std::allocator<std::pair<std::string const, google::protobuf::FieldDescriptor
Proto_Type> >, std::_Select1st<std::pair<std::string const, google::protobuf::FieldDescriptorProto_Type> >, std::equal_to<std::string>, google::protobuf::hash<std::string>, std::tr1::__detail::_Mod_range_
hashing, std::tr1::__detail::_Default_ranged_hash, std::tr1::__detail::_Prime_rehash_policy, false, false, true>::_M_find_node (__p=<value optimized out>, __k=<value optimized out>)
    at /data/openwrt/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib/gcc/mips-openwrt-linux-uclibc/4.6.3/../../../../mips-openwrt-linux-uclibc/include/c++/4.6.3/bits/char_traits.h:257   
No locals.
#2  0x77cda3f0 in std::tr1::__detail::_Map_base<std::string, std::pair<std::string const, google::protobuf::FieldDescriptorProto_Type>, std::_Select1st<std::pair<std::string const, google::protobuf::Field
DescriptorProto_Type> >, true, std::tr1::_Hashtable<std::string, std::pair<std::string const, google::protobuf::FieldDescriptorProto_Type>, std::allocator<std::pair<std::string const, google::protobuf::Fi
eldDescriptorProto_Type> >, std::_Select1st<std::pair<std::string const, google::protobuf::FieldDescriptorProto_Type> >, std::equal_to<std::string>, google::protobuf::hash<std::string>, std::tr1::__detail
::_Mod_range_hashing, std::tr1::__detail::_Default_ranged_hash, std::tr1::__detail::_Prime_rehash_policy, false, false, true> >::operator[] (this=0x77d0f970, __k=@0x7fca7620)
    at /data/openwrt/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib/gcc/mips-openwrt-linux-uclibc/4.6.3/../../../../mips-openwrt-linux-uclibc/include/c++/4.6.3/bits/basic_string.h:235  
        __h = (
    std::tr1::_Hashtable<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, google::protobuf::F
ieldDescriptorProto_Type>, std::allocator<std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, google::protobuf::FieldDescriptorProto_Type> >, std::_Select1st<std::pair<
const std::basic_string<char, std::char_traits<char>, std::allocator<char> >, google::protobuf::FieldDescriptorProto_Type> >, std::equal_to<std::basic_string<char, std::char_traits<char>, std::allocator<c
har> > >, google::protobuf::hash<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::tr1::__detail::_Mod_range_hashing, std::tr1::__detail::_Default_ranged_hash, std::tr1::__det
ail::_Prime_rehash_policy, false, false, true> *) 0x77d0f970
        __code = 448222
        __n = 5
        __p = <value optimized out>
#3  0x77cd34b8 in __static_initialization_and_destruction_0 (__initialize_p=<value optimized out>)
    at /data/openwrt/staging_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/lib/gcc/mips-openwrt-linux-uclibc/4.6.3/../../../../mips-openwrt-linux-uclibc/include/c++/4.6.3/bits/basic_string.h:235
No locals.
#4  0x77cdabd4 in __do_global_ctors_aux () from /usr/lib/libprotobuf.so.7
No symbol table info available.
#5  0x77c30ad8 in ?? () from /usr/lib/libprotobuf.so.7
No symbol table info available.
Backtrace stopped: frame did not save the PC

I already tried to compile openwrt and packages with different gcc versions (linaro 4.7, normal 4.7, normal 4.6) - but it did not fix it.

Some weeks ago (I cannot say exactly), I compiled the program and it worked without a sigsegv, so something in trunk might have changed to kill libprotobuf? Now at trunk r33210.

.config is attached for reference.

Is there anyone how can help me to debug/fix this?

Attachments (1)

config (71.1 KB) - added by markus.doits@… 5 years ago.
.config of openwrt

Download all attachments as: .zip

Change History (3)

Changed 5 years ago by markus.doits@…

.config of openwrt

comment:1 Changed 5 years ago by markus.doits@…

fixed it, boblight Makefile was bogus (wrong uclibxx depends ...) ... ticket can be closed

comment:2 Changed 4 years ago by jow

  • Milestone changed from Attitude Adjustment 12.09 to Barrier Breaker 14.07

Milestone Attitude Adjustment 12.09 deleted

Add Comment

Modify Ticket

Action
as new .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.