Re: Possible memory leak in Icecast-2.4-beta3

voice <[email protected]>
Newsgroups gmane.comp.audio.icecast.devel
Message-ID <CAExdBCudaubcMEbQAEj3kBM5VknCfSPe5oybE+r+mRX1tCeGgA@mail.gmail.com>
Just running it for about six hours I've attached a log of Valgrind's
output.


On Sun, Dec 8, 2013 at 8:19 AM, "Thomas B. Rücker" <[email protected]>wrote:

>  On 12/06/2013 04:57 PM, voice wrote:
>
>
>  Putting my hat into the ring as well to report memory leak issues using
> 2.3.99.3.
>
>
> On Mon, Oct 28, 2013 at 3:30 AM, Luca Cireddu <[email protected]> wrote:
>
>>  Hi all,
>> Icecast increase memory usage on our server too.
>> When started, memory usage was about 0.5% of 1GB.
>> After 2 or 3 months, about 15%.
>> I tried also to use valgrind to debug icecast sources, but my machine is
>> too slow to keep it running through it, and it crashes.
>>
>>
> To everyone, please help pinpointing this by running Icecast in Valgrind.
> I'll try to also set up a test setup, but it's possible that this doesn't
> show up in a lab environment.
>
> Cheers
>
> Thomas
>
> _______________________________________________
> Icecast-dev mailing list
> [email protected]
> http://lists.xiph.org/mailman/listinfo/icecast-dev
>
>

_______________________________________________
Icecast-dev mailing list
[email protected]
http://lists.xiph.org/mailman/listinfo/icecast-dev
valgrind.log (text/x-log, 5.7 KB)
==435== Memcheck, a memory error detector
==435== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==435== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==435== Command: /path/to/bin/icecast -c /path/to/etc/icecast.xml
==435== Parent PID: 32478
==435== 
==435== 
==435== HEAP SUMMARY:
==435==     in use at exit: 1,311,915 bytes in 3,068 blocks
==435==   total heap usage: 5,578,637 allocs, 5,575,569 frees, 1,994,733,783 bytes allocated
==435== 
==435== 55 bytes in 1 blocks are definitely lost in loss record 15 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x40BABE: util_get_path_from_normalised_uri (util.c:236)
==435==    by 0x4136A7: fserve_client_create (fserve.c:414)
==435==    by 0x41AAF6: add_authenticated_listener (auth.c:476)
==435==    by 0x41B0ED: auth_add_listener (auth.c:559)
==435==    by 0x40B2DA: connection_accept_loop (connection.c:1160)
==435==    by 0x405D20: main (main.c:343)
==435== 
==435== 114 (80 direct, 34 indirect) bytes in 2 blocks are definitely lost in loss record 16 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x412179: refbuf_new (refbuf.c:45)
==435==    by 0x4196A5: format_mp3_get_plugin (format_mp3.c:105)
==435==    by 0x4174AF: format_get_plugin (format.c:98)
==435==    by 0x409D98: connection_complete_source (connection.c:836)
==435==    by 0x40DEE5: start_relay_stream (slave.c:334)
==435==    by 0x4218D4: _start_routine (thread.c:657)
==435==    by 0x5B4CB4F: start_thread (pthread_create.c:304)
==435==    by 0x5E3CA7C: clone (clone.S:112)
==435== 
==435== 8,891 bytes in 2 blocks are possibly lost in loss record 19 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x4121C6: refbuf_new (refbuf.c:51)
==435==    by 0x417F04: make_refbuf_with_page (format_ogg.c:78)
==435==    by 0x417F60: format_ogg_attach_header (format_ogg.c:91)
==435==    by 0x41D50F: get_buffer_header (format_vorbis.c:175)
==435==    by 0x41CADB: process_vorbis (format_vorbis.c:475)
==435==    by 0x4181BC: ogg_get_buffer (format_ogg.c:414)
==435==    by 0x40EF68: source_main (source.c:509)
==435==    by 0x40DF14: start_relay_stream (slave.c:344)
==435==    by 0x4218D4: _start_routine (thread.c:657)
==435==    by 0x5B4CB4F: start_thread (pthread_create.c:304)
==435==    by 0x5E3CA7C: clone (clone.S:112)
==435== 
==435== 22,098 (10,160 direct, 11,938 indirect) bytes in 254 blocks are definitely lost in loss record 21 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x412179: refbuf_new (refbuf.c:45)
==435==    by 0x417F04: make_refbuf_with_page (format_ogg.c:78)
==435==    by 0x417F60: format_ogg_attach_header (format_ogg.c:91)
==435==    by 0x41CA6D: initial_opus_page (format_opus.c:84)
==435==    by 0x4183FB: ogg_get_buffer (format_ogg.c:252)
==435==    by 0x40EF68: source_main (source.c:509)
==435==    by 0x40DF14: start_relay_stream (slave.c:344)
==435==    by 0x4218D4: _start_routine (thread.c:657)
==435==    by 0x5B4CB4F: start_thread (pthread_create.c:304)
==435==    by 0x5E3CA7C: clone (clone.S:112)
==435== 
==435== 57,212 (20,320 direct, 36,892 indirect) bytes in 508 blocks are definitely lost in loss record 23 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x412179: refbuf_new (refbuf.c:45)
==435==    by 0x4193CF: mp3_get_filter_meta (format_mp3.c:620)
==435==    by 0x40EF68: source_main (source.c:509)
==435==    by 0x40DF14: start_relay_stream (slave.c:344)
==435==    by 0x4218D4: _start_routine (thread.c:657)
==435==    by 0x5B4CB4F: start_thread (pthread_create.c:304)
==435==    by 0x5E3CA7C: clone (clone.S:112)
==435== 
==435== 69,814 (10,160 direct, 59,654 indirect) bytes in 254 blocks are definitely lost in loss record 25 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x412179: refbuf_new (refbuf.c:45)
==435==    by 0x417F04: make_refbuf_with_page (format_ogg.c:78)
==435==    by 0x417F60: format_ogg_attach_header (format_ogg.c:91)
==435==    by 0x41C988: process_opus_page (format_opus.c:54)
==435==    by 0x4182A1: ogg_get_buffer (format_ogg.c:381)
==435==    by 0x40EF68: source_main (source.c:509)
==435==    by 0x40DF14: start_relay_stream (slave.c:344)
==435==    by 0x4218D4: _start_routine (thread.c:657)
==435==    by 0x5B4CB4F: start_thread (pthread_create.c:304)
==435==    by 0x5E3CA7C: clone (clone.S:112)
==435== 
==435== 1,153,039 (20,320 direct, 1,132,719 indirect) bytes in 508 blocks are definitely lost in loss record 27 of 27
==435==    at 0x4C28BED: malloc (vg_replace_malloc.c:263)
==435==    by 0x412179: refbuf_new (refbuf.c:45)
==435==    by 0x417F04: make_refbuf_with_page (format_ogg.c:78)
==435==    by 0x417F60: format_ogg_attach_header (format_ogg.c:91)
==435==    by 0x41D50F: get_buffer_header (format_vorbis.c:175)
==435==    by 0x41CADB: process_vorbis (format_vorbis.c:475)
==435==    by 0x4181BC: ogg_get_buffer (format_ogg.c:414)
==435==    by 0x40EF68: source_main (source.c:509)
==435==    by 0x40DF14: start_relay_stream (slave.c:344)
==435==    by 0x4218D4: _start_routine (thread.c:657)
==435==    by 0x5B4CB4F: start_thread (pthread_create.c:304)
==435==    by 0x5E3CA7C: clone (clone.S:112)
==435== 
==435== LEAK SUMMARY:
==435==    definitely lost: 61,095 bytes in 1,527 blocks
==435==    indirectly lost: 1,241,237 bytes in 1,524 blocks
==435==      possibly lost: 8,891 bytes in 2 blocks
==435==    still reachable: 692 bytes in 15 blocks
==435==         suppressed: 0 bytes in 0 blocks
==435== Reachable blocks (those to which a pointer was found) are not shown.
==435== To see them, rerun with: --leak-check=full --show-reachable=yes
==435== 
==435== For counts of detected and suppressed errors, rerun with: -v
==435== ERROR SUMMARY: 7 errors from 7 contexts (suppressed: 16 from 6)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.