[gdal-dev] General Memory/Resource leak fixes(Cleanup calls)
sanjay boddhu
sanjay_ieee at yahoo.com
Thu Jan 24 15:18:44 EST 2008
Thanks Even I'll upgrade and check back on the leaks
Sanjay
Even Rouault <even.rouault at mines-paris.org> wrote: The leak reported in geotiff.cpp was indeed a leak in GDAL 1.4.2. It's fixed
since GDAL 1.5.0, so you should consider upgrading.
As far the ressource leaks, I can't really say as it's probably windows
specific stuff I can't test on my platform, but I wouldn't worry too much if
I were you. These are probably just one time leaks.
Le Thursday 24 January 2008 20:44:08 sanjay boddhu, vous avez écrit :
> Hi Martin,
> I did try calling all the below cleanup calls:
>
> VSICleanupFileManager();
> GDALDestroyDriverManager();
> CPLCleanupTLS();
> CPLFinderClean();
> CPLFreeConfig();
>
> But i still have the leak with call stack showing the below order(poiting
> to VSIMalloc):
>
> Type Quantity Total (bytes) Allocation Location Sequence
>
> Leak exiting program 1 4 gdal14.dll, cpl_vsisimple.cpp, VSIMalloc
> - line 280 52 Memory Leak Exiting Program: Address 0x04266CF8 (4)
> allocated by malloc.
>
> Allocation Call Stack - Thread 0 [0x0CA0]
> VSIMalloc c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_vsisimple.cpp 280
> CPLMalloc c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_conv.cpp 127
> GTiffCreate c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\frmts\gtiff\geotiff.cpp 3568
> Create c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\frmts\gtiff\geotiff.cpp 3640
> Create c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\gcore\gdaldriver.cpp 109
>
> and the resource leaks are(one of the mutex) looks like:
>
> Type Quantity Deallocator Allocation Location Sequence
>
> CreateMutexA 1 CloseHandle gdal14.dll, cpl_multiproc.cpp,
> CPLCreateMutex - line 457 53 Resource Leak Exiting Program: Handle
> 0x00000110 allocated by CreateMutexA.
>
> Allocation Call Stack - Thread 0 [0x0CA0]
> CPLCreateMutex c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_multiproc.cpp 457
> CPLCreateOrAcquireMutex c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_multiproc.cpp 117
> CPLMutexHolder c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_multiproc.cpp 63
> GetGDALDriverManager c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\gcore\gdaldrivermanager.cpp
> 72 GDALAllRegister c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\frmts\gdalallregister.cpp 73
>
> And TLSAlloc leak looks like:
>
> Type Quantity Deallocator Allocation Location Sequence
>
> TlsAlloc 1 TlsFree gdal14.dll, cpl_multiproc.cpp, CPLGetTLSList -
> line 642 58 Resource Leak Exiting Program: Handle 0x00000021 allocated
> by TlsAlloc.
>
> Allocation Call Stack - Thread 0 [0x0CA0]
> CPLGetTLSList c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_multiproc.cpp 642
> CPLGetTLS c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_multiproc.cpp 954
> CPLGetStaticResult c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_path.cpp 55
> CPLGetDirname c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\port\cpl_path.cpp 165
> AutoLoadDrivers c:\documents and
> settings\sboddhu\desktop\gdal142\gdal-1.4.2\gcore\gdaldrivermanager.cpp
> 553
>
> Sorry to dump the call stack..but if martin/someone can find any obvious
> mistake/ missing something in my calling the cleanup calls that would be
> helpful.
>
> Thanks
> Sanjay
>
> mchapman at texelinc.com wrote: Not sure if this is it but are you calling
> GDALCleanupAll? It's called that or GDALAllCleanup or something. I think
> it is declared near GDALRegisterAll.
>
> Martin
>
> Sent via BlackBerry by AT&T
>
> -----Original Message-----
> From: sanjay boddhu
>
> Date: Thu, 24 Jan 2008 01:41:45
> To:gdal-dev at lists.osgeo.org
> Subject: [gdal-dev] General Memory/Resource leak fixes(Cleanup calls)
>
>
> Hi ,
> I have been trying to fix (or to be more appropriate, find the cleanup
> calls to fix) the memory and resource leaks in my application(which uses
> GDAL to read and write to a tif file). I have tried all the cleanup calls
> mentioned in the end of :
>
> http://www.gdal.org/gdalinfo.c.html
>
> and reduced lot of memory/resource leaks......But i still get a memory leak
> pointing in "GDALDataset Create( ...)" and few resource leaks of Mutex
> and TLsAlloc.
>
> I would really appreciate if anyone can recommend the right cleanup calls
> for the above leaks or hint me in the right direction.
>
> Thanks
>
> Sanjay
>
>
>
> "If you look at what you do not have in life, you don't have anything"
> "If you look at what you have in life, you have everything"
>
> ----------------
> Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it
> now. _______________________________________________ gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>
>
>
> "If you look at what you do not have in life, you don't have anything"
> "If you look at what you have in life, you have everything"
>
> ---------------------------------
> Never miss a thing. Make Yahoo your homepage.
"If you look at what you do not have in life, you don't have anything"
"If you look at what you have in life, you have everything"
---------------------------------
Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/gdal-dev/attachments/20080124/94d0b957/attachment.html
More information about the gdal-dev
mailing list