Skip to content

Instantly share code, notes, and snippets.

@springmeyer
Created October 31, 2012 21:43
Show Gist options
  • Save springmeyer/3990098 to your computer and use it in GitHub Desktop.
Save springmeyer/3990098 to your computer and use it in GitHub Desktop.
node-blend palettes @3765d9bb04162dadea0553bc0d2e0bb35f0b0cc9
ubuntu@ip-10-196-0-40:~/node-blend$ valgrind --leak-check=full node test.js
==8475== Memcheck, a memory error detector
==8475== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==8475== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==8475== Command: node test.js
==8475==
==8475== Warning: set address range perms: large range [0x3a8b6354000, 0x3a8d6354000) (noaccess)
==8475== Thread 3:
==8475== Conditional jump or move depends on uninitialised value(s)
==8475== at 0x73164E0: inflateReset2 (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
==8475== by 0x73165D8: inflateInit2_ (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
==8475== by 0x6EA60D3: png_create_read_struct_2 (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0)
==8475== by 0x6EA6296: png_create_read_struct (in /lib/x86_64-linux-gnu/libpng12.so.0.46.0)
==8475== by 0x6C5A94B: PNGImageReader::PNGImageReader(unsigned char*, unsigned long) (reader.cpp:9)
==8475== by 0x6C5B873: ImageReader::create(unsigned char*, unsigned long) (reader.cpp:210)
==8475== by 0x6C6ABBE: Work_Blend(uv_work_s*) (blend.cpp:273)
==8475== by 0x5C3E4B: ??? (in /usr/bin/nodejs)
==8475== by 0x5A57E99: start_thread (pthread_create.c:308)
==8475== by 0x5D60CBC: clone (clone.S:112)
==8475==
done!
==8475== Warning: set address range perms: large range [0x3a8b6354000, 0x3a8d6354000) (noaccess)
==8475==
==8475== HEAP SUMMARY:
==8475== in use at exit: 176,420 bytes in 81 blocks
==8475== total heap usage: 14,773 allocs, 14,692 frees, 17,751,288 bytes allocated
==8475==
==8475== Thread 1:
==8475== 24 bytes in 1 blocks are definitely lost in loss record 6 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x58EC6D: node::ImmutableAsciiSource::CreateFromLiteral(char const*, unsigned long) (in /usr/bin/nodejs)
==8475== by 0x57C24B: node::Load(v8::Handle<v8::Object>) (in /usr/bin/nodejs)
==8475== by 0x57D659: node::Start(int, char**) (in /usr/bin/nodejs)
==8475== by 0x5C8E76C: (below main) (libc-start.c:226)
==8475==
==8475== 24 bytes in 1 blocks are definitely lost in loss record 7 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x58EC6D: node::ImmutableAsciiSource::CreateFromLiteral(char const*, unsigned long) (in /usr/bin/nodejs)
==8475== by 0x58BDC2: node::MainSource() (in /usr/bin/nodejs)
==8475== by 0x57C253: node::Load(v8::Handle<v8::Object>) (in /usr/bin/nodejs)
==8475== by 0x57D659: node::Start(int, char**) (in /usr/bin/nodejs)
==8475== by 0x5C8E76C: (below main) (libc-start.c:226)
==8475==
==8475== 72 bytes in 1 blocks are possibly lost in loss record 16 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x5B373D: node::SignalWatcher::New(v8::Arguments const&) (in /usr/bin/nodejs)
==8475== by 0x6CA9A6: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B640C792: ???
==8475== by 0x3A8B6431E9D: ???
==8475== by 0x3A8B64307DD: ???
==8475== by 0x3A8B640C8A6: ???
==8475== by 0x3A8B6406115: ???
==8475== by 0x6EE982: ??? (in /usr/bin/nodejs)
==8475== by 0x6F016A: v8::internal::Execution::Call(v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*, bool*, bool) (in /usr/bin/nodejs)
==8475== by 0x79D91A: v8::internal::Object::GetPropertyWithDefinedGetter(v8::internal::Object*, v8::internal::JSReceiver*) (in /usr/bin/nodejs)
==8475==
==8475== 288 bytes in 1 blocks are possibly lost in loss record 20 of 37
==8475== at 0x4C29DB4: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x4012074: _dl_allocate_tls (dl-tls.c:297)
==8475== by 0x5A58ABC: pthread_create@@GLIBC_2.2.5 (allocatestack.c:571)
==8475== by 0x574383: ??? (in /usr/bin/nodejs)
==8475== by 0x5C3F0B: ??? (in /usr/bin/nodejs)
==8475== by 0x5C5D57: eio_custom (in /usr/bin/nodejs)
==8475== by 0x5CE38A: uv_queue_work (in /usr/bin/nodejs)
==8475== by 0x6C6A4EE: Blend(v8::Arguments const&) (blend.cpp:169)
==8475== by 0x6CD9EA: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B648E49B: ???
==8475== by 0x3A8B6410C1D: ???
==8475==
==8475== 392 bytes in 1 blocks are possibly lost in loss record 21 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x59676C: node::TTYWrap::New(v8::Arguments const&) (in /usr/bin/nodejs)
==8475== by 0x6CA9A6: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B640C792: ???
==8475== by 0x3A8B6494A3F: ???
==8475== by 0x3A8B640C589: ???
==8475== by 0x3A8B642E2F0: ???
==8475== by 0x3A8B64306ED: ???
==8475== by 0x3A8B640C8A6: ???
==8475== by 0x3A8B6406115: ???
==8475== by 0x6EE982: ??? (in /usr/bin/nodejs)
==8475==
==8475== 864 bytes in 36 blocks are definitely lost in loss record 24 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x58EC6D: node::ImmutableAsciiSource::CreateFromLiteral(char const*, unsigned long) (in /usr/bin/nodejs)
==8475== by 0x58BE14: node::DefineJavaScript(v8::Handle<v8::Object>) (in /usr/bin/nodejs)
==8475== by 0x579B17: ??? (in /usr/bin/nodejs)
==8475== by 0x6CD9EA: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B6433AC9: ???
==8475== by 0x3A8B640C8A6: ???
==8475== by 0x3A8B6406115: ???
==8475== by 0x6EE982: ??? (in /usr/bin/nodejs)
==8475== by 0x6F016A: v8::internal::Execution::Call(v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*, bool*, bool) (in /usr/bin/nodejs)
==8475== by 0x6B113A: v8::Function::Call(v8::Handle<v8::Object>, int, v8::Handle<v8::Value>*) (in /usr/bin/nodejs)
==8475==
==8475== 2,335 bytes in 1 blocks are definitely lost in loss record 27 of 37
==8475== at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x5D4B9B: uv_setup_args (in /usr/bin/nodejs)
==8475== by 0x57D518: node::Start(int, char**) (in /usr/bin/nodejs)
==8475== by 0x5C8E76C: (below main) (libc-start.c:226)
==8475==
==8475== 8,248 (56 direct, 8,192 indirect) bytes in 1 blocks are definitely lost in loss record 31 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x57EBA5: node::Buffer::New(v8::Arguments const&) (in /usr/bin/nodejs)
==8475== by 0x6CA9A6: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B640C792: ???
==8475== by 0x3A8B643E249: ???
==8475== by 0x3A8B643DC59: ???
==8475== by 0x3A8B640C0ED: ???
==8475== by 0x3A8B640C583: ???
==8475== by 0x3A8B6473C29: ???
==8475== by 0x3A8B6468E9B: ???
==8475== by 0x3A8B6467AB5: ???
==8475==
==8475== 10,429 (56 direct, 10,373 indirect) bytes in 1 blocks are definitely lost in loss record 33 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x57EBA5: node::Buffer::New(v8::Arguments const&) (in /usr/bin/nodejs)
==8475== by 0x6CA9A6: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B640C792: ???
==8475== by 0x3A8B643DB83: ???
==8475== by 0x3A8B640C0ED: ???
==8475== by 0x3A8B640C347: ???
==8475== by 0x3A8B6473C29: ???
==8475== by 0x3A8B640C0ED: ???
==8475== by 0x3A8B648E3BE: ???
==8475== by 0x3A8B6410C1D: ???
==8475==
==8475== 44,901 (56 direct, 44,845 indirect) bytes in 1 blocks are definitely lost in loss record 35 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x57EBA5: node::Buffer::New(v8::Arguments const&) (in /usr/bin/nodejs)
==8475== by 0x6CA9A6: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B640C792: ???
==8475== by 0x3A8B640CA49: ???
==8475== by 0x3A8B6406275: ???
==8475== by 0x6EE982: ??? (in /usr/bin/nodejs)
==8475== by 0x6EED79: v8::internal::Execution::New(v8::internal::Handle<v8::internal::JSFunction>, int, v8::internal::Handle<v8::internal::Object>*, bool*) (in /usr/bin/nodejs)
==8475== by 0x6B0F31: v8::Function::NewInstance(int, v8::Handle<v8::Value>*) const (in /usr/bin/nodejs)
==8475== by 0x57ED3F: node::Buffer::New(char*, unsigned long) (in /usr/bin/nodejs)
==8475== by 0x6C6B779: Work_AfterBlend(uv_work_s*) (blend.cpp:385)
==8475==
==8475== 96,947 (56 direct, 96,891 indirect) bytes in 1 blocks are definitely lost in loss record 37 of 37
==8475== at 0x4C2B1C7: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==8475== by 0x57EBA5: node::Buffer::New(v8::Arguments const&) (in /usr/bin/nodejs)
==8475== by 0x6CA9A6: ??? (in /usr/bin/nodejs)
==8475== by 0x3A8B6406361: ???
==8475== by 0x3A8B640C792: ???
==8475== by 0x3A8B643DB83: ???
==8475== by 0x3A8B640C0ED: ???
==8475== by 0x3A8B640C347: ???
==8475== by 0x3A8B6473C29: ???
==8475== by 0x3A8B640C0ED: ???
==8475== by 0x3A8B648E41C: ???
==8475== by 0x3A8B6410C1D: ???
==8475==
==8475== LEAK SUMMARY:
==8475== definitely lost: 3,471 bytes in 43 blocks
==8475== indirectly lost: 160,301 bytes in 4 blocks
==8475== possibly lost: 752 bytes in 3 blocks
==8475== still reachable: 11,896 bytes in 31 blocks
==8475== suppressed: 0 bytes in 0 blocks
==8475== Reachable blocks (those to which a pointer was found) are not shown.
==8475== To see them, rerun with: --leak-check=full --show-reachable=yes
==8475==
==8475== For counts of detected and suppressed errors, rerun with: -v
==8475== Use --track-origins=yes to see where uninitialised values come from
==8475== ERROR SUMMARY: 13 errors from 12 contexts (suppressed: 2 from 2)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment