Opened 13 years ago

Closed 13 years ago

#200 closed Bug Report (fixed)

valgrind warnings and crash during (or after) patch load

Reported by: kfoltman Owned by:
Priority: major Component: Ingen
Keywords: Cc:

Description

==26582== Thread 1:
==26582== Invalid read of size 4
==26582==    at 0x561E860: Ingen::NodeBase::port_impl(unsigned) const (NodeBase.hpp:89)
==26582==    by 0x565A4F8: Ingen::RequestObjectEvent::post_process() (RequestObjectEvent.cpp:71)
==26582==    by 0x563A345: Ingen::PostProcessor::process() (PostProcessor.cpp:67)
==26582==    by 0x5612204: Ingen::Engine::main_iteration() (Engine.cpp:153)
==26582==    by 0x6844A34: Ingen::GUI::App::gtk_main_iteration() (App.cpp:354)
==26582==    by 0x68486FB: sigc::internal::slot_call0<sigc::bound_mem_functor0<bool, Ingen::GUI::App>, bool>::call_it(sigc::internal::slot_rep*) (mem_fun.h:1787)
==26582==    by 0x4881A84: (within /usr/lib/libglibmm-2.4.so.1.0.25)
==26582==    by 0x4921545: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4920DD5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924192: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924576: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x6FA2263: gtk_main (gtkmain.c:1163)
==26582==  Address 0x90f2814 is 0 bytes after a block of size 4 alloc'd
==26582==    at 0x4022F14: operator new[](unsigned) (vg_replace_malloc.c:268)
==26582==    by 0x564C6E6: Ingen::CreatePortEvent::pre_process() (Array.hpp:46)
==26582==    by 0x563DBB7: Ingen::QueuedEventSource::_whipped() (QueuedEventSource.cpp:170)
==26582==    by 0x5614B23: Raul::Slave::_run() (Slave.hpp:58)
==26582==    by 0x483B545: Raul::Thread::_static_run(void*) (Thread.hpp:86)
==26582==    by 0x45334FA: start_thread (in /lib/tls/i686/cmov/libpthread-2.7.so)
==26582==    by 0x4AA2E5D: clone (in /lib/tls/i686/cmov/libc-2.7.so)
==26582== 
==26582== Invalid read of size 4
==26582==    at 0x56303B0: Ingen::ObjectSender::send_port(Ingen::Shared::ClientInterface*, Ingen::PortImpl const*) (ObjectSender.cpp:125)
==26582==    by 0x5631498: Ingen::ObjectSender::send_patch(Ingen::Shared::ClientInterface*, Ingen::PatchImpl const*, bool) (ObjectSender.cpp:62)
==26582==    by 0x565A4F8: Ingen::RequestObjectEvent::post_process() (RequestObjectEvent.cpp:71)
==26582==    by 0x563A345: Ingen::PostProcessor::process() (PostProcessor.cpp:67)
==26582==    by 0x5612204: Ingen::Engine::main_iteration() (Engine.cpp:153)
==26582==    by 0x6844A34: Ingen::GUI::App::gtk_main_iteration() (App.cpp:354)
==26582==    by 0x68486FB: sigc::internal::slot_call0<sigc::bound_mem_functor0<bool, Ingen::GUI::App>, bool>::call_it(sigc::internal::slot_rep*) (mem_fun.h:1787)
==26582==    by 0x4881A84: (within /usr/lib/libglibmm-2.4.so.1.0.25)
==26582==    by 0x4921545: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4920DD5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924192: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924576: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==  Address 0x62690038 is not stack'd, malloc'd or (recently) free'd
==26582== 
==26582== Invalid read of size 4
==26582==    at 0x56303B5: Ingen::ObjectSender::send_port(Ingen::Shared::ClientInterface*, Ingen::PortImpl const*) (ObjectSender.cpp:125)
==26582==    by 0x5631498: Ingen::ObjectSender::send_patch(Ingen::Shared::ClientInterface*, Ingen::PatchImpl const*, bool) (ObjectSender.cpp:62)
==26582==    by 0x565A4F8: Ingen::RequestObjectEvent::post_process() (RequestObjectEvent.cpp:71)
==26582==    by 0x563A345: Ingen::PostProcessor::process() (PostProcessor.cpp:67)
==26582==    by 0x5612204: Ingen::Engine::main_iteration() (Engine.cpp:153)
==26582==    by 0x6844A34: Ingen::GUI::App::gtk_main_iteration() (App.cpp:354)
==26582==    by 0x68486FB: sigc::internal::slot_call0<sigc::bound_mem_functor0<bool, Ingen::GUI::App>, bool>::call_it(sigc::internal::slot_rep*) (mem_fun.h:1787)
==26582==    by 0x4881A84: (within /usr/lib/libglibmm-2.4.so.1.0.25)
==26582==    by 0x4921545: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4920DD5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924192: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924576: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==  Address 0x3812e5e5 is not stack'd, malloc'd or (recently) free'd
==26582== 
==26582== Jump to the invalid address stated on the next line
==26582==    at 0xFFFF4CB5: ???
==26582==    by 0x5631498: Ingen::ObjectSender::send_patch(Ingen::Shared::ClientInterface*, Ingen::PatchImpl const*, bool) (ObjectSender.cpp:62)
==26582==    by 0x565A4F8: Ingen::RequestObjectEvent::post_process() (RequestObjectEvent.cpp:71)
==26582==    by 0x563A345: Ingen::PostProcessor::process() (PostProcessor.cpp:67)
==26582==    by 0x5612204: Ingen::Engine::main_iteration() (Engine.cpp:153)
==26582==    by 0x6844A34: Ingen::GUI::App::gtk_main_iteration() (App.cpp:354)
==26582==    by 0x68486FB: sigc::internal::slot_call0<sigc::bound_mem_functor0<bool, Ingen::GUI::App>, bool>::call_it(sigc::internal::slot_rep*) (mem_fun.h:1787)
==26582==    by 0x4881A84: (within /usr/lib/libglibmm-2.4.so.1.0.25)
==26582==    by 0x4921545: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4920DD5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924192: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924576: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==  Address 0xffff4cb5 is not stack'd, malloc'd or (recently) free'd
==26582== 
==26582== Process terminating with default action of signal 11 (SIGSEGV)
==26582==  Bad permissions for mapped region at address 0xFFFF4CB5
==26582==    at 0xFFFF4CB5: ???
==26582==    by 0x5631498: Ingen::ObjectSender::send_patch(Ingen::Shared::ClientInterface*, Ingen::PatchImpl const*, bool) (ObjectSender.cpp:62)
==26582==    by 0x565A4F8: Ingen::RequestObjectEvent::post_process() (RequestObjectEvent.cpp:71)
==26582==    by 0x563A345: Ingen::PostProcessor::process() (PostProcessor.cpp:67)
==26582==    by 0x5612204: Ingen::Engine::main_iteration() (Engine.cpp:153)
==26582==    by 0x6844A34: Ingen::GUI::App::gtk_main_iteration() (App.cpp:354)
==26582==    by 0x68486FB: sigc::internal::slot_call0<sigc::bound_mem_functor0<bool, Ingen::GUI::App>, bool>::call_it(sigc::internal::slot_rep*) (mem_fun.h:1787)
==26582==    by 0x4881A84: (within /usr/lib/libglibmm-2.4.so.1.0.25)
==26582==    by 0x4921545: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4920DD5: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924192: (within /usr/lib/libglib-2.0.so.0.1600.4)
==26582==    by 0x4924576: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.1600.4)

I was looking for something else (proof for or against passing uninitialized ports on song load) but got above instead - and figured it could be interesting.

Change History (1)

comment:1 Changed 13 years ago by David Robillard

Resolution: fixed
Status: newclosed

These errors are caught by assertions in Raul::Array. Assuming fixed now because I always run with a debug build and can't reproduce this (valgrind output is clean on patch load).

Note: See TracTickets for help on using tickets.