|
From: Mehmet T. <mt...@ad...> - 2005-08-17 15:32:08
|
Hi all,
I'm using Suse 9.0 with kernel 2.4.21 built for x86_64 (AMD x86_64).
Valgrind reports possible memory leak:
==1878== LEAK SUMMARY:
==1878== definitely lost: 0 bytes in 0 blocks.
==1878== possibly lost: 11928 bytes in 14 blocks.
==1878== still reachable: 66032 bytes in 3 blocks.
==1878== suppressed: 0 bytes in 0 blocks.
The detailed leak message claims that the leak happened within "pthread_create"
and "pthread_join" functions of the pthread library. Can anyone tell me how
seriously should I take this leak message?
The code snippet and detailed leak message is below...
Thanks,
Mehmet
========================================
class graphManager {
public:
pthread_t m_th;
pthread_attr_t m_thAttr;
int addNode(....);
}
void *threadFunc(void *ptr);
int graphManager::addNode(....) {
pthread_attr_init(&m_thAttr);
return pthread_create(&m_th, &m_thAttr, threadFunc, (void *) this);
}
=========================================
==1877== Syscall param clone(child_tidptr) contains uninitialised byte(s)
==1877== at 0x12087E64: clone (in /lib64/libc.so.6)
==1877== by 0x11E28948: __pthread_initialize_manager
(in /lib64/libpthread.so.0)
==1877== by 0x11E28BCA: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x401FEC: main (graphdata.cpp:61)
==1877==
==1877== Syscall param write(buf) points to uninitialised byte(s)
==1877== at 0x11E2BCEF: write (in /lib64/libpthread.so.0)
==1877== by 0x11E289A2: __pthread_initialize_manager
(in /lib64/libpthread.so.0)
==1877== by 0x11E28BCA: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x401FEC: main (graphdata.cpp:61)
==1877== Address 0x349FDEC0 is on thread 1's stack
==1877==
==1877== Syscall param write(buf) points to uninitialised byte(s)
==1877== at 0x11E2BCEF: write (in /lib64/libpthread.so.0)
==1877== by 0x11E28B7E: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x401FEC: main (graphdata.cpp:61)
==1877== Address 0x349FDFAC is on thread 1's stack
==1877==
==1877== Syscall param write(buf) points to uninitialised byte(s)
==1877== at 0x11E2BCEF: write (in /lib64/libpthread.so.0)
==1877== by 0x11E28B7E: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x402021: main (graphdata.cpp:64)
==1877== Address 0x349FDFAC is on thread 1's stack
==1877==
==1877== Syscall param write(buf) points to uninitialised byte(s)
==1877== at 0x11E2BCEF: write (in /lib64/libpthread.so.0)
==1877== by 0x11E28B7E: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x402056: main (graphdata.cpp:67)
==1877== Address 0x349FDFAC is on thread 1's stack
==1877==
==1877== Syscall param write(buf) points to uninitialised byte(s)
==1877== at 0x11E2BCEF: write (in /lib64/libpthread.so.0)
==1877== by 0x11E28B7E: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x40208B: main (graphdata.cpp:67)
==1877== Address 0x349FDFAC is on thread 1's stack
==1877==
==1877== Syscall param write(buf) points to uninitialised byte(s)
==1877== at 0x11E2BCEF: write (in /lib64/libpthread.so.0)
==1877== by 0x11E28B7E: pthread_create@@GLIBC_2.2.5
(in /lib64/libpthread.so.0)
==1877== by 0x4051C1: graphManager::addNode(mtsdNode*, AdeNodeConfig*)
(graphMan.cpp:84)
==1877== by 0x4020C0: main (graphdata.cpp:67)
==1877== Address 0x349FDFAC is on thread 1's stack
--1877-- REDIR: 0xFFFFFFFFFF600000 (???) redirected to 0x7002896F (???)
|