You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Rajika Kumarasiri (JIRA)" <qp...@incubator.apache.org> on 2008/10/06 09:21:44 UTC

[jira] Commented: (QPID-1317) Memory leaks in C++ broker

    [ https://issues.apache.org/jira/browse/QPID-1317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12637024#action_12637024 ] 

Rajika Kumarasiri commented on QPID-1317:
-----------------------------------------

The same issue appear in the trunk as well.

> Memory leaks in C++ broker
> --------------------------
>
>                 Key: QPID-1317
>                 URL: https://issues.apache.org/jira/browse/QPID-1317
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: M3
>         Environment: Fedora 9, GCC 4.2.4
>            Reporter: Rajika Kumarasiri
>            Priority: Minor
>
> Here is the valigrind log.  Most of the errors occurs due to uninitialized arguments which pass to system calls. The proper initialization of the arguments  would fix the problem. 
> [rajika@localhost sbin]$ valgrind ./qpidd --auth no
> ==16853== Memcheck, a memory error detector.
> ==16853== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
> ==16853== Using LibVEX rev 1804, a library for dynamic binary translation.
> ==16853== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
> ==16853== Using valgrind-3.3.0, a dynamic binary instrumentation framework.
> ==16853== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
> ==16853== For more details, rerun with: -v
> ==16853== 
> ==16853== Syscall param epoll_ctl(event) points to uninitialised byte(s)
> ==16853==    at 0xB809BE: epoll_ctl (in /lib/libc-2.8.so)
> ==16853==    by 0x430DA8F: qpid::sys::DispatchHandle::startWatch(boost::shared_ptr<qpid::sys::Poller>) (Dispatcher.cpp:84)
> ==16853==    by 0x42C4E74: qpid::sys::AsynchAcceptor::start(boost::shared_ptr<qpid::sys::Poller>) (AsynchIO.cpp:79)
> ==16853==    by 0x414E97B: qpid::sys::AsynchIOProtocolFactory::accept(boost::shared_ptr<qpid::sys::Poller>, qpid::sys::ConnectionCodec::Factory*) (TCPIOPlugin.cpp:115)
> ==16853==    by 0x409D620: qpid::broker::Broker::accept() (Broker.cpp:375)
> ==16853==    by 0x409DC1E: qpid::broker::Broker::run() (Broker.cpp:273)
> ==16853==    by 0x804FF00: main (qpidd.cpp:251)
> ==16853==  Address 0xbe842dec is on thread 1's stack
> ==16853== 
> ==16853== Syscall param epoll_ctl(event) points to uninitialised byte(s)
> ==16853==    at 0xB809BE: epoll_ctl (in /lib/libc-2.8.so)
> ==16853==    by 0x430DA8F: qpid::sys::DispatchHandle::startWatch(boost::shared_ptr<qpid::sys::Poller>) (Dispatcher.cpp:84)
> ==16853==    by 0x42C4F51: qpid::sys::AsynchIO::start(boost::shared_ptr<qpid::sys::Poller>) (AsynchIO.cpp:198)
> ==16853==    by 0x414D87E: qpid::sys::AsynchIOProtocolFactory::established(boost::shared_ptr<qpid::sys::Poller>, qpid::sys::Socket const&, qpid::sys::ConnectionCodec::Factory*, bool) (TCPIOPlugin.cpp:99)
> ==16853==    by 0x414FE03: boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void, boost::_mfi::mf4<void, qpid::sys::AsynchIOProtocolFactory, boost::shared_ptr<qpid::sys::Poller>, qpid::sys::Socket const&, qpid::sys::ConnectionCodec::Factory*, bool>, boost::_bi::list5<boost::_bi::value<qpid::sys::AsynchIOProtocolFactory*>, boost::_bi::value<boost::shared_ptr<qpid::sys::Poller> >, boost::arg<1> (*)(), boost::_bi::value<qpid::sys::ConnectionCodec::Factory*>, boost::_bi::value<bool> > >, void, qpid::sys::Socket const&>::invoke(boost::detail::function::function_buffer&, qpid::sys::Socket const&) (mem_fn_template.hpp:494)
> ==16853==    by 0x42CB1C1: boost::function1<void, qpid::sys::Socket const&, std::allocator<boost::function_base> >::operator()(qpid::sys::Socket const&) const (function_template.hpp:692)
> ==16853==    by 0x42C761E: qpid::sys::AsynchAcceptor::readable(qpid::sys::DispatchHandle&) (AsynchIO.cpp:94)
> ==16853==    by 0x42CA3DC: boost::detail::function::void_function_obj_invoker1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, qpid::sys::AsynchAcceptor, qpid::sys::DispatchHandle&>, boost::_bi::list2<boost::_bi::value<qpid::sys::AsynchAcceptor*>, boost::arg<1> (*)()> >, void, qpid::sys::DispatchHandle&>::invoke(boost::detail::function::function_buffer&, qpid::sys::DispatchHandle&) (mem_fn_template.hpp:162)
> ==16853==    by 0x430F1A6: boost::function1<void, qpid::sys::DispatchHandle&, std::allocator<boost::function_base> >::operator()(qpid::sys::DispatchHandle&) const (function_template.hpp:692)
> ==16853==    by 0x430DE7A: qpid::sys::DispatchHandle::processEvent(qpid::sys::Poller::EventType) (Dispatcher.cpp:383)
> ==16853==    by 0x430D59A: qpid::sys::Dispatcher::run() (Poller.h:105)
> ==16853==    by 0x409DDE5: qpid::broker::Broker::run() (Broker.cpp:284)
> ==16853==  Address 0xbe8429dc is on thread 1's stack
> ==16853== 
> ==16853== Syscall param epoll_ctl(event) points to uninitialised byte(s)
> ==16853==    at 0xB809BE: epoll_ctl (in /lib/libc-2.8.so)
> ==16853==    by 0x430DC81: qpid::sys::DispatchHandle::processEvent(qpid::sys::Poller::EventType) (Dispatcher.cpp:411)
> ==16853==    by 0x430D59A: qpid::sys::Dispatcher::run() (Poller.h:105)
> ==16853==    by 0x409DDE5: qpid::broker::Broker::run() (Broker.cpp:284)
> ==16853==    by 0x804FF00: main (qpidd.cpp:251)
> ==16853==  Address 0xbe842edc is on thread 1's stack
> ==16853== 
> ==16853== Thread 6:
> ==16853== Syscall param epoll_ctl(event) points to uninitialised byte(s)
> ==16853==    at 0xB809BE: epoll_ctl (in /lib/libc-2.8.so)
> ==16853==    by 0x430DDAF: qpid::sys::DispatchHandle::processEvent(qpid::sys::Poller::EventType) (Dispatcher.cpp:419)
> ==16853==    by 0x430D59A: qpid::sys::Dispatcher::run() (Poller.h:105)
> ==16853==    by 0x42CBC90: qpid::sys::(anonymous namespace)::runRunnable(void*) (Thread.cpp:35)
> ==16853==    by 0xC4532E: start_thread (in /lib/libpthread-2.8.so)
> ==16853==    by 0xB8027D: clone (in /lib/libc-2.8.so)
> ==16853==  Address 0x7ae22bc is on thread 6's stack
> ==16853== 
> ==16853== Thread 1:
> ==16853== Syscall param epoll_ctl(event) points to uninitialised byte(s)
> ==16853==    at 0xB809BE: epoll_ctl (in /lib/libc-2.8.so)
> ==16853==    by 0x430DDAF: qpid::sys::DispatchHandle::processEvent(qpid::sys::Poller::EventType) (Dispatcher.cpp:419)
> ==16853==    by 0x430D59A: qpid::sys::Dispatcher::run() (Poller.h:105)
> ==16853==    by 0x409DDE5: qpid::broker::Broker::run() (Broker.cpp:284)
> ==16853==    by 0x804FF00: main (qpidd.cpp:251)
> ==16853==  Address 0xbe842edc is on thread 1's stack
> ==16853== 
> ==16853== Thread 5:
> ==16853== Syscall param epoll_ctl(event) points to uninitialised byte(s)
> ==16853==    at 0xB809BE: epoll_ctl (in /lib/libc-2.8.so)
> ==16853==    by 0x430DC81: qpid::sys::DispatchHandle::processEvent(qpid::sys::Poller::EventType) (Dispatcher.cpp:411)
> ==16853==    by 0x430D59A: qpid::sys::Dispatcher::run() (Poller.h:105)
> ==16853==    by 0x42CBC90: qpid::sys::(anonymous namespace)::runRunnable(void*) (Thread.cpp:35)
> ==16853==    by 0xC4532E: start_thread (in /lib/libpthread-2.8.so)
> ==16853==    by 0xB8027D: clone (in /lib/libc-2.8.so)
> ==16853==  Address 0x70e12bc is on thread 5's stack

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