Drmemory - Memory Debugger for Windows, Linux, Mac, and Android

Overview

Dr. Memory: the memory debugger

About Dr. Memory

Dr. Memory is a memory monitoring tool capable of identifying memory-related programming errors such as accesses of uninitialized memory, accesses to unaddressable memory (including outside of allocated heap units and heap underflow and overflow), accesses to freed memory, double frees, memory leaks, and (on Windows) handle leaks, GDI API usage errors, and accesses to un-reserved thread local storage slots.

Dr. Memory operates on unmodified application binaries running on Windows, Linux, Mac, or Android on commodity IA-32, AMD64, and ARM hardware.

Dr. Memory is released under an LGPL license and binary packages are available for download.

Dr. Memory is built on the DynamoRIO dynamic instrumentation tool plaform.

Dr. Memory logo

Dr. Memory Performance

Dr. Memory is faster than comparable tools, including Valgrind, as shown in our CGO 2011 paper Practical Memory Checking with Dr. Memory, where we compare the two tools on Linux on the SPECCPU 2006 benchmark suite:

Performance chart

(Valgrind is unable to run 434.zeusmp and 447.dealII).

Documentation

Documentation is included in the release package. We also maintain a copy for online browsing.

System call tracer for Windows

The Dr. Memory package includes an "strace for Windows" tool called drstrace.

Obtaining help

Dr. Memory has its own discussion list.

To report a bug, use the issue tracker.

See also the Dr. Memory home page: http://drmemory.org/

Comments
  • DO NOT REUSE THIS ISSUE: OPEN A NEW ONE [was: Dr. Memory fails to start with

    DO NOT REUSE THIS ISSUE: OPEN A NEW ONE [was: Dr. Memory fails to start with "WARNING: unable to locate results file since can't open .../resfile.PID: 2"]

    From [email protected] on June 29, 2010 11:02:36

    Dr. Memory r19 + Dynamorio r363 work fine.

    When I update Dr. Memory to r20 ( https://code.google.com/p/drmemory/source/detail?r=20 ) and re-build (nmake clean && cmake ... && nmake install), I get the following error when trying to run any executable: WARNING: unable to locate results file since can't open .../logs/resfile.XXXX: 2"

    At first I thought the problem was my AV software but disabling it didn't help. This is happening on Windows XP.

    Original issue: http://code.google.com/p/drmemory/issues/detail?id=9

    Migrated Priority-Medium OpSys-Windows Status-WontFix 
    opened by derekbruening 44
  • ASSERT: common\alloc.c:1197: is_entirely_in_heap_region(start, end) (heap data struct inconsistency)

    ASSERT: common\alloc.c:1197: is_entirely_in_heap_region(start, end) (heap data struct inconsistency)

    From [email protected] on August 12, 2010 08:42:01

    1. Download base_unittests.exe attached to https://code.google.com/p/dynamorio/issues/detail?id=251 2) drmemory.exe -- base_unittests -> asserts right away. Looks like it doesn't support something done during googletest startup.

    This happens on both r35 and v1.2.1 downloaded from here.

    I'll continue using r33 until this is fixed.

    Original issue: http://code.google.com/p/drmemory/issues/detail?id=23

    Migrated Status-Fixed OpSys-Windows Bug-Assert Priority-High 
    opened by derekbruening 31
  • TOOL CRASH (unit_tests, net_unittests) on MFYI bot

    TOOL CRASH (unit_tests, net_unittests) on MFYI bot

    From [email protected] on October 29, 2012 16:27:28

    the MFYI bot has unit_ disabled b/c of this

    rnk, can you fill in details on when this first started, and any theories on whether it's a regression in drmem or some chromium change that uncovered an existing bug

    trying to repro on net_. on bot it failed on: http://build.chromium.org/p/chromium.memory.fyi/builders/Windows%20Tests%20%28DrMemory%29/builds/6313/steps/memory%20test%3A%20net/logs/stdio [ RUN ] Spdy/SpdyNetworkTransactionSpdy3Test.FilePost/2 08:51:54 common.py [INFO] process ended, did not time out 08:51:54 common.py [INFO] flushing stdout 08:51:54 common.py [INFO] collecting result code 08:51:54 common.py [ERROR] e:\b\build\slave\chromium-dbg-win-drmemory\build\src\tools\valgrind....\third_party\drmemory\unpacked\bin\drmemory.exe exited with non-zero result code -1073741819 08:51:54 drmemory_analyze.py [INFO] PASS: No error reports found 08:51:54 valgrind_test.py [INFO] Please see http://dev.chromium.org/developers/how-tos/using-drmemory for the info on Dr. Memory 08:51:54 valgrind_test.py [ERROR] Test execution failed. 08:51:54 valgrind_test.py [INFO] elapsed time: 00:05:50 @@@[email protected][email protected]/SpdyNetworkTransactionSpdy3Test.FilePost/2: @@@ @@@[email protected][email protected] not complete.@@@ @@@[email protected]_SpdyNetworkTransactionSpdy3Test.FilePost_2@@@ @@@STEP_FAILURE@@@ @@@[email protected] test: net@@@ @@@[email protected] not complete@@@ @@@[email protected] 1@@@ 14 new files were left in c:\users\chrome~2\appdata\local\temp: Fix the tests to clean up themselves.

    Original issue: http://code.google.com/p/drmemory/issues/detail?id=1067

    Migrated Status-Fixed OpSys-Windows Priority-Critical Bug-AppCrash 
    opened by derekbruening 29
  • CRASH on tests/hello on fedora 31 x86-64 [was:

    CRASH on tests/hello on fedora 31 x86-64 [was: "74 tests failed" out of 99]

    Describe the bug

    I am getting test failures after building the latest git master source and running "make -j1 test".

    To Reproduce Steps to reproduce the behavior:

    1. git clone https://github.com/DynamoRIO/drmemory
    2. git submodule update --remote --merge --init --progress
    3. cmake -DCMAKE_INSTALL_PREFIX=~/apps/todel-drmemory -DCMAKE_BUILD_TYPE=Debug ../drmemory
    4. ( Also happens with a "release" build.)
    5. "make -j1"
    6. make -j1 test

    Please also answer these questions drawn from https://github.com/DynamoRIO/drmemory/wiki/Debugging#narrowing-down-the-source-of-the-problem :

    • Does the problem go away when running in light mode (pass -light to Dr. Memory)? irrelevant
    • Does the problem go away when running with the options -leaks_only -no_count_leaks -no_track_allocs? irrelevant
    • Does the problem go away when running under plain DynamoRIO? Do this by running dynamorio/bin32/drrun -- <application and args> or dynamorio/bin64/drrun -- <application and args> depending on the bitwidth of your applicaiton. (Ignore warnings about "incomplete installation".) Irrelevant
    • What happens with the debug version of Dr. Memory and of its underlying engine DynamoRIO? Try this by passing -debug -dr_debug -pause_at_assert. Are any messages reported? happens there too.

    Expected behavior All tests should pass.

    Versions

    • What version of Dr. Memory are you using? github master's source
    • Does the latest build from https://github.com/DynamoRIO/drmemory/wiki/Latest-Build solve the problem?
    • What operating system version are you running on? ("Windows 10" is not sufficient: give the release number.) fedora 31 x86-64 latest
    • Is your application 32-bit or 64-bit? 64-bit

    Additional context Add any other context about the problem here. I have this cpuinfo:

    processor       : 0
    vendor_id       : GenuineIntel
    cpu family      : 6
    model           : 142
    model name      : Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz
    stepping        : 10
    microcode       : 0xca
    cpu MHz         : 1101.543
    cache size      : 6144 KB
    physical id     : 0
    siblings        : 8
    core id         : 0
    cpu cores       : 4
    apicid          : 0
    initial apicid  : 0
    fpu             : yes
    fpu_exception   : yes
    cpuid level     : 22
    wp              : yes
    flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d
    bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
    bogomips        : 4599.93
    clflush size    : 64
    cache_alignment : 64
    address sizes   : 39 bits physical, 48 bits virtual
    power management:
    
    OpSys-Linux Bug-ToolCrash OpSys-x64 Status-UserError 
    opened by shlomif 26
  • Application Crashing at start-up When Run with Dr Memory

    Application Crashing at start-up When Run with Dr Memory

    System info: OS Name: Microsoft Windows 7 Professional Version: 6.1.7601 Service Pack 1 Build 7601

    Qt: 5.4.1 compiler: Microsoft Windows SDK for windows 7 (7.1.7600.0.30514)(x86)

    I created an gui application in Qt without any functionality except default one. Debug the application with STATIC Configuration. So that if I double click on exe it run well. But whenever I run through Dr Memory It always Crashes at start-up.

    Following Steps i have taken to run my application through Dr Memory: 1- Open the command Prompt with admin. 2- Fire the command drmemory.exe -- path with exe name "test.exe" 3- application crashes with abnormal code 0xc000001d.

    I also tried with various different combination of arguments but application crashes each time.

    OpSys-Windows Bug-AppCrash 
    opened by zeeshancs07 21
  • support valgrind suppression format

    support valgrind suppression format

    From [email protected] on January 31, 2011 21:43:47

    Dr. Memory should support Valgrind's suppression format, to take advantage of existing suppresion files. http://valgrind.org/docs/manual/mc-manual.html#mc-manual.suppfiles fun:X == !X obj:X == X!

    Note that Valgrind's format lacks the ability to specify mod!func. This is probably b/c it models ELF w/ a global namespace: but, suppression funcs can be (and maybe often are?) private symbols, and thus there can easily be duplicates in multiple modules, and there's no way to limit which one is suppressed. So Dr. Memory should keep its existing format as its primary and recommended format.

    Two features of Valgrind's should perhaps be incorporated into the Dr. Memory primary format:

    1. using curly braces around suppressions for easier parsing
    2. a user-specified name for each suppression, with stats printed out on how many times each named suppression was used (today only the total is printed)

    Whether to distinguish suppressions by memory reference size needs to be decided: leaning toward no.

    Original issue: http://code.google.com/p/drmemory/issues/detail?id=282

    Migrated Priority-Medium Status-Fixed Type-Feature Component-Suppression 
    opened by derekbruening 21
  • leak false positive from initial thread Fls alloc

    leak false positive from initial thread Fls alloc

    From [email protected] on June 11, 2010 11:08:02

    $ ctest -S tests\runsuite.cmake Error(s) when configuring the project There was an error: The system cannot find the file specified Error(s) when building project No tests were found!!! Error executing SCP: The system cannot find the file specified Error executing SCP: The system cannot find the file specified Error executing SCP: The system cannot find the file specified Problems when submitting via SCP looks like find_program(CTEST_SCP_COMMAND cp DOC "copy command for local copy of results") is not working on Windows.

    Changing the line to "find_program(CTEST_SCP_COMMAND copy DOC "copy command for local copy of results")" doesn't help

    Original issue: http://code.google.com/p/drmemory/issues/detail?id=5

    Migrated Priority-Medium Status-Fixed Component-Tests OpSys-Windows 
    opened by derekbruening 21
  • missing callstack interior frames when higher frame has FPO

    missing callstack interior frames when higher frame has FPO

    From [email protected] on December 02, 2011 05:25:25

    What steps will reproduce the problem? 1. Compile the attached MSVC project in release mode (I used VS 9.0) 2. Run Dr Memory against the produced executable as: "c:\Program Files (x86)\Dr. Memory\bin\drmemory.exe" release/memtest.exe What is the expected output? What do you see instead? Expected to get leak shown with full call stack, i.e. in this case something like: Error #1: LEAK #0 MSVCR90.dll!operator new #1 FutID::CopyInstance #2 ProdData::SetAndOwnExchangeProductDefn #3 ProdMgr::OnProductWithMerge #4 _tmain

    In this case I get: Error #1: LEAK 1 direct bytes 0x0042c378-0x0042c379 + 0 indirect bytes #0 MSVCR90.dll!operator new #1 FutID::CopyInstance [w:\dev\memtest\memtest\futid.cpp:14] #2 KERNEL32.dll!BaseProcessInitPostImport

    In the general case in real world projects I get worse results which show more levels of the stack but the functions shown on the stack would not have resulted in such a stack trace, so must be invalid. What version of the product are you using? On what operating system? 1.4.5 build 2 on WinXP Please provide any additional information below. This is raised to replace https://code.google.com/p/dynamorio/issues/detail?id=624

    Attachment: memtest.zip

    Original issue: http://code.google.com/p/drmemory/issues/detail?id=703

    Migrated Priority-Medium Status-Fixed Performance Usability 
    opened by derekbruening 20
  • Frame for main() missed in callstack starting in libc

    Frame for main() missed in callstack starting in libc

    I presume that I'm doing something wrong, but this is pretty basic usage following the documentation.

    Here's what I'm seeing,

    $ cat test.c
    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
      char *p;
      printf("p=%s\n", p);
      return 0;
    }
    

    My compiler,

    $ gcc --version
    gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
    
    

    Compiling with -g for debugging info, $ gcc -g -fno-inline -fno-omit-frame-pointer test.c

    Version of DrMemory (it's in the directory name below too),

    $ ./DrMemory-Linux-2.3.0-1/bin/drmemory -version
    Dr. Memory version 2.3.0 -- build 1
    
    
    

    Output from DrMemory without a reference to the source code location in test.c,

    $ ./DrMemory-Linux-2.3.0-1/bin/drmemory -- ./a.out
    ~~Dr.M~~ Dr. Memory version 2.3.0
    ~~Dr.M~~ 
    ~~Dr.M~~ Error #1: UNINITIALIZED READ: reading register r11
    ~~Dr.M~~ # 0 libc.so.6!?                    +0x0      (0x00007fb2960911bf <libc.so.6+0x7a1bf>)
    ~~Dr.M~~ # 1 libc.so.6!_IO_printf           +0xae     (0x00007fb29607bebf <libc.so.6+0x64ebf>)
    ~~Dr.M~~ # 2 libc.so.6!__libc_start_main    +0xf2     (0x00007fb29603e0b3 <libc.so.6+0x270b3>)
    ~~Dr.M~~ # 3 _start
    ~~Dr.M~~ Note: @0:00:00.329 in thread 891508
    ~~Dr.M~~ Note: instruction: test   %r11 %r11
    p=(null)
    ~~Dr.M~~ 
    ~~Dr.M~~ ERRORS FOUND:
    ~~Dr.M~~       0 unique,     0 total unaddressable access(es)
    ~~Dr.M~~       1 unique,     1 total uninitialized access(es)
    ~~Dr.M~~       0 unique,     0 total invalid heap argument(s)
    ~~Dr.M~~       0 unique,     0 total warning(s)
    ~~Dr.M~~       0 unique,     0 total,      0 byte(s) of leak(s)
    ~~Dr.M~~       0 unique,     0 total,      0 byte(s) of possible leak(s)
    ~~Dr.M~~ ERRORS IGNORED:
    ~~Dr.M~~      14 unique,    17 total,   7706 byte(s) of still-reachable allocation(s)
    ~~Dr.M~~          (re-run with "-show_reachable" for details)
    ~~Dr.M~~ Details: /home/cfr/proj/drmemory/DrMemory-Linux-2.3.0-1/drmemory/logs/DrMemory-a.out.891508.000/results.txt
    

    For comparison, Valgrind points to the source line in test.c,

    $ valgrind ./a.out
    ==892836== Memcheck, a memory error detector
    ==892836== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
    ==892836== Using Valgrind-3.15.0 and LibVEX; rerun with -h for copyright info
    ==892836== Command: ./a.out
    ==892836== 
    ==892836== Conditional jump or move depends on uninitialised value(s)
    ==892836==    at 0x48D91C2: __vfprintf_internal (vfprintf-internal.c:1688)
    ==892836==    by 0x48C3EBE: printf (printf.c:33)
    ==892836==    by 0x109173: main (test.c:5)
    ==892836== 
    p=(null)
    ==892836== 
    ==892836== HEAP SUMMARY:
    ==892836==     in use at exit: 0 bytes in 0 blocks
    ==892836==   total heap usage: 1 allocs, 1 frees, 1,024 bytes allocated
    ==892836== 
    ==892836== All heap blocks were freed -- no leaks are possible
    ==892836== 
    ==892836== Use --track-origins=yes to see where uninitialised values come from
    ==892836== For lists of detected and suppressed errors, rerun with: -s
    ==892836== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
    
    
    Usability 
    opened by charles-randall 19
  • failure to init Umbra due to segment-spanning 2TB reservation

    failure to init Umbra due to segment-spanning 2TB reservation

    Using DrMemory-Windows-2.1.0-1.msi, I see this with all my Cpputest exe's built with MSVS2017:

    C:\Users\SHill\SHill_view\tm_build_system\build\unittest64>"C:\Program` Files (x86)\Dr. Memory\bin64\drmemory.exe" -batch -v -- seg_unittest.exe
    INFO: targeting application: "C:\Users\SHill\SHill_view\tm_build_system\build\unittest64\seg_unittest.exe"
    INFO: app cmdline: "seg_unittest.exe"
    INFO: logdir is "C:\Users\SHill\AppData\Roaming\Dr. Memory"
    INFO: symcache_dir is "C:\Users\SHill\AppData\Roaming\Dr. Memory\symcache"
    INFO: Setting TZ to GMT Standard Time for i#2164 workaround
    INFO: DynamoRIO configuration directory is C:\Users\SHill/dynamorio
    INFO: configuring seg_unittest.exe pid=18496 dr_ops="-disable_traces -bb_single_restore_prefix -max_bb_instrs 256 -vm_size 256M -no_enable_reset -no_vm_base_near_app -no_early_inject -msgbox_mask 0 -logdir `C:\Users\SHill\AppData\Roaming\Dr. Memory\dynamorio` "
    INFO: configuring client "C:\Program Files (x86)\Dr. Memory\bin64\release\drmemorylib.dll" ops="-logdir `C:\Users\SHill\AppData\Roaming\Dr. Memory` -symcache_dir `C:\Users\SHill\AppData\Roaming\Dr. Memory\symcache` -lib_blacklist `C:\Windows*.d??,C:\Program Files\Common Files\Microsoft Shared*.d??,C:\Program Files (x86)\Common Files\Microsoft Shared*.d??` -resfile 18496 "
    INFO: waiting for app to exit...
    ~~Dr.M~~ Dr. Memory version 2.1.0
    ~~Dr.M~~ Running "seg_unittest.exe"
    ~~Dr.M~~ Using system call file C:\Program Files (x86)\Dr. Memory\bin64\syscalls_x64.txt
    <Application C:\Users\SHill\SHill_view\tm_build_system\build\unittest64\seg_unittest.exe (18496).  Dr. Memory internal crash at PC 0x0000000000b02ad6.  Please report this at http://drmemory.org/issues along with the results of running '-debug -dr_debug'.  Program aborted.
    0xc0000005 0x00000000 0x0000000000b02ad6 0x0000000000b02ad6 0x0000000000000000 0x0000000010160b9d
    Base: 0x0000000071000000
    Registers: eax=0x00000000000000ff ebx=0x0000000000542e34 ecx=0x0000000000000008 edx=0x00000000fffffcff
            esi=0x0000000000000000 edi=0x000000001ddfe010 esp=0x000000001ddfdfa0 ebp=0x0000000000000000
            r8 =0x0000000010160b9d r9 =0x0000000000000008 r10=0x0000000000000001 r11=0x000000001ddfe050
            r12=0x0000000000af6b50 r13=0x0000000000100000 r14=0x0000000000000001 r15=0x0000000000af6ba0
            eflags=0x0000000000010286
    2.1.0-1-(Mar 17 2019 23:59:56) WinVer=105;Rel=1803;Build=17134;Edition=Professional
    -no_dynamic_options -disasm_mask 8 -logdir 'C:\Users\SHill\AppData\Roaming\Dr. Memory\dynamorio' -client_lib 'C:\Program Files (x86)\Dr. Memory\bin64\release\drmemorylib.dll;0;-logdir `C:\Users\SHill\AppData\Roaming\Dr. Memory` -symcache_dir `C:\Users\SHill\AppData\Roaming\Dr. Memory\symcache` -lib_blacklist `C:\Windows*
    C:\Program Files (x86)\Dr. Memory\bin64\release\drmemorylib.dll=0x0000000000ae0000
    C:\Program Files (x86)\Dr. Memory\bin64\release/dbghelp.dll=0x0000000000d80000
    C:\Windows/system32/ADVAPI32.dll=0x00007ffe11450000
    C:\Windows/system32/sechost.dll=0x00007ffe10860000
    C:\Windows/system32/RPCRT4.dll=0x00007ffe10a90000
    C:\Windows/system32/msvcrt.dll=0x0000000000940000
    C:\Windows/system32/kernel32.dll=0x00000000009e0000
    C:\Windows/system32/KERNELBASE.d>
    INFO: fetching symbols
    ~~Dr.M~~ WARNING: application exited with abnormal code 0xffffffff
    
    C:\Users\SHill\SHill_view\tm_build_system\build\unittest64>"C:\Program Files (x86)\Dr. Memory\bin64\drmemory.exe" -batch -debug -v -- seg_unittest.exe
    INFO: targeting application: "C:\Users\SHill\SHill_view\tm_build_system\build\unittest64\seg_unittest.exe"
    INFO: app cmdline: "seg_unittest.exe"
    INFO: logdir is "C:\Users\SHill\AppData\Roaming\Dr. Memory"
    INFO: symcache_dir is "C:\Users\SHill\AppData\Roaming\Dr. Memory\symcache"
    INFO: Setting TZ to GMT Standard Time for i#2164 workaround
    INFO: DynamoRIO configuration directory is C:\Users\SHill/dynamorio
    INFO: configuring seg_unittest.exe pid=2584 dr_ops="-disable_traces -bb_single_restore_prefix -max_bb_instrs 256 -vm_size 256M -no_enable_reset -no_vm_base_near_app -no_early_inject -msgbox_mask 0 -logdir `C:\Users\SHill\AppData\Roaming\Dr. Memory\dynamorio` "
    INFO: configuring client "C:\Program Files (x86)\Dr. Memory\bin64\debug\drmemorylib.dll" ops="-logdir `C:\Users\SHill\AppData\Roaming\Dr. Memory` -symcache_dir `C:\Users\SHill\AppData\Roaming\Dr. Memory\symcache` -lib_blacklist `C:\Windows*.d??,C:\Program Files\Common Files\Microsoft Shared*.d??,C:\Program Files (x86)\Common Files\Microsoft Shared*.d??` -resfile 2584 "
    INFO: waiting for app to exit...
    ~~Dr.M~~ Dr. Memory version 2.1.0
    ~~Dr.M~~ Running "seg_unittest.exe"
    ~~Dr.M~~ ASSERT FAILURE (thread 2936): D:\drmemory_package\drmemory\drmemory.c:1969: false (fail to init Umbra)
    INFO: fetching symbols
    ~~Dr.M~~ WARNING: application exited with abnormal code 0xffffffff
    
    Bug-Assert Bug-ToolCrash Priority-High Hotlist-Release OpSys-Win8.1 
    opened by StephenHillAtViaivi 18
  • Crash in Win10 TH2

    Crash in Win10 TH2

    Run: drmemory -- cmd

    Output:

    ~~Dr.M~~ Dr. Memory version 1.9.0
    ~~Dr.M~~ Running "cmd.exe"
    ~~Dr.M~~ WARNING: application is missing line number information.
    ~~Dr.M~~ WARNING: application exited with abnormal code 0xc0000005
    

    Log:

    Dr. Memory version 1.9.0 build 4 built on Oct  2 2015 13:13:14
    Dr. Memory results for pid 5636: "cmd.exe"
    Application cmdline: "cmd.exe"
    Recorded 116 suppression(s) from default D:\Tools\DrMemory\bin\suppress-default.txt
    
    WARNING: application is missing line number information.
    

    Run: drmemory -debug -- cmd.exe

    Output:

    ~~Dr.M~~ Dr. Memory version 1.9.0
    ~~Dr.M~~ Running "cmd.exe"
    ~~Dr.M~~ ASSERT FAILURE (thread 15928): d:\drmemory_package\drsyscall\drsyscall_windows.c:341: false (syscall number table error detected)~~Dr.M~~ WARNING: application exited with abnormal code 0xffffffff
    

    Log:

    Dr. Memory version 1.9.0 build 4 built on Oct  2 2015 13:13:36
    Dr. Memory results for pid 8684: "cmd.exe"
    Application cmdline: "cmd.exe"
    Recorded 116 suppression(s) from default D:\Tools\DrMemory\bin\suppress-default.txt
    ASSERT FAILURE (thread 18740): d:\drmemory_package\drsyscall\drsyscall_windows.c:341: false (syscall number table error detected)
    

    I'm using DrMemory release 1.9.0 in Windows 10 x64 build 10586.14. Things seem to be all the same for all programs.

    OpSys-Windows Bug-Assert Priority-High Bug-AppCrash Hotlist-Release 
    opened by FrankHB 17
  • False positive on Win API WS2_32 calls

    False positive on Win API WS2_32 calls

    Describe the bug Although I found here some past issues telling that these reports where "false positives" and fixed around 2015, it seems that simple programs using windows sockets and file API still reports "UNINITIALIZED READ"

    To Reproduce Create a new cmake project in MSVC 2022 17.4.3, using Win10 SDK and edit the cmakelists.txt to link on ws2_32 library

    Compile the following program

    #define WIN32_LEAN_AND_MEAN
    
    #include <ws2tcpip.h>
    
    int main()
    {
    	WSAData wsaData;
    	WSAStartup(MAKEWORD(2, 2), &wsaData);
    	WSACleanup();
    	return 0;
    }
    

    Output is :

    Error #1: UNINITIALIZED READ: reading register eax
    # 0 WS2_32.dll!WSALookupServiceNextW   +0x23f1   (0x00007ff805ceded1 <WS2_32.dll+0xded1>)
    # 1 WS2_32.dll!WSALookupServiceNextW   +0x2ffd   (0x00007ff805ceeade <WS2_32.dll+0xeade>)
    # 2 WS2_32.dll!WSAStartup              +0x33c    (0x00007ff805ceee4d <WS2_32.dll+0xee4d>)
    # 3 main                                [C:\Users\...\source\repos\WinSocketsCalls\WinSocketsCalls.cpp:17]
    Note: @0:00:00.262 in thread 26452
    Note: instruction: cmp    %eax %r12d
    
    Error #2: UNINITIALIZED READ: reading register eflags
    # 0 WS2_32.dll!WSALookupServiceNextW   +0x240f   (0x00007ff805cedeef <WS2_32.dll+0xdeef>)
    # 1 WS2_32.dll!WSALookupServiceNextW   +0x2ffd   (0x00007ff805ceeade <WS2_32.dll+0xeade>)
    # 2 WS2_32.dll!WSAStartup              +0x33c    (0x00007ff805ceee4d <WS2_32.dll+0xee4d>)
    # 3 main                                [C:\Users\...\source\repos\WinSocketsCalls\WinSocketsCalls.cpp:17]
    Note: @0:00:00.263 in thread 26452
    Note: instruction: cmovo  %r13 -> %rax
    
    Error #3: UNINITIALIZED READ: reading 0x000000ef7b5af940-0x000000ef7b5af944 4 byte(s) within 0x000000ef7b5af940-0x000000ef7b5af948
    # 0 replace_memset                      [D:\a\drmemory\drmemory\drmemory\replace.c:194]
    # 1 WS2_32.dll!WSALookupServiceNextW   +0x2448   (0x00007ff805cedf29 <WS2_32.dll+0xdf29>)
    # 2 WS2_32.dll!WSALookupServiceNextW   +0x2ffd   (0x00007ff805ceeade <WS2_32.dll+0xeade>)
    # 3 WS2_32.dll!WSAStartup              +0x33c    (0x00007ff805ceee4d <WS2_32.dll+0xee4d>)
    # 4 main                                [C:\Users\...\source\repos\WinSocketsCalls\WinSocketsCalls.cpp:17]
    Note: @0:00:00.277 in thread 26452
    Note: instruction: cmp    0x30(%rsp) $0x0000000000000003
    

    Expected behavior This program should be valid and no errors should be reported

    Versions

    • What version of Dr. Memory are you using? Dr. Memory version 2.5.19327 build 0 built on Dec 1 2022 15:38:39

    • What operating system version are you running on? ("Windows 10" is not sufficient: give the release number.) Windows version: WinVer=105;Rel=2009;Build=19042;Edition=Enterprise

    • Is your application 32-bit or 64-bit? 64 bits

    opened by DavidPerretSN 0
  • Crash when trying to debug application from Visual Studio 19

    Crash when trying to debug application from Visual Studio 19

    I tried to run Dr. Memory, 64-bit exe, on my application from within Visual Studio 2019 when I got that Dr. Memory internal crash. The thing is: I'm getting very strange crashes in the application I want to debug, in the context of freeing memory/unloading dlls, so I thought maybe there's some mem corruption I can analyze with Dr. Memory. But the strange thing is that this only happens in my Virtual Windows 10 (10.0.19044 Build 19044) machine, not in the virtual machine of a colleague, not on the native Windows installation of another colleague. And now Dr. Memory crashes with some strange output:

     Dr. Memory version 2.5.0
             Running "D:\eclipseWS\something\something_head_exe\exe\Debug\something.exe x/input.inp"
             Using system call file D:\programme\DrMemory\drmemory\logs\symcache\syscalls_x64.txt
    <Application D:\eclipseWS\something\something_head_exe\exe\Debug\something.exe (9272).  Dr. Memory internal crash at PC 0x000000007107cf00.  Please report this at http://drmemory.org/issues along with the results of running '-debug -dr_debug'.  Program aborted.
    0xc0000005 0x00000000 0x000000007107cf00 0x000000007107cf00 0x0000000000000000 0x0000000000000000
    Base: 0x0000000071000000
    Registers: eax=0x0000000000000001 ebx=0x0000000000000000 ecx=0x0000000000000000 edx=0x0000000000000000
            esi=0x0000000000000000 edi=0x00000220c2b152b0 esp=0x00000220c2b151f0 ebp=0x00000220c2b15360
            r8 =0x00000220c2b15310 r9 =0x00000000710f4040 r10=0x00000220c2b15312 r11=0x000000007111b2e0
            r12=0x0000000000000000 r13=0x0000000000000000 r14=0x0000000000000000 r15=0x0000000000000000
            eflags=0x0000000000010246
    2.5.0-0-(Oct 18 2021 03:01:22) WinVer=105;Rel=2009;Build=19044;Edition=Enterprise
    -no_dynamic_options -disasm_mask 8 -logdir 'D:\programme\DrMemory\drmemory\logs\dynamorio' -client_lib 'D:\programme\DrMemory\bin64\release\drmemorylib.dll;0;-visual_studio -logdir `D:\programme\DrMemory\drmemory\logs` -symcache_dir `D:\programme\DrMemory\drmemory\logs\symcache` -lib_blocklist_default `C:\WINDOWS*.d??,C:
    0x00000220c2b15360 0x00007ff73b60c308
    0x00007ff73b60c313 0x000a0d0079726f6d>
    
    
    <Starting application D:\eclipseWS\something\something_head_exe\exe\Debug\something.exe (7292)>
    <Running on newer-than-this-build "Microsoft Windows 10-2009 x64">
    <Initial options = -no_dynamic_options -logdir 'D:\programme\DrMemory\drmemory\logs\dynamorio' -client_lib 'D:\programme\DrMemory\bin64\debug\drmemorylib.dll;0;-visual_studio -logdir `D:\programme\DrMemory\drmemory\logs` -symcache_dir `D:\programme\DrMemory\drmemory\logs\symcache` -lib_blocklist_default `C:\WINDOWS*.d??,C:\Program Files\Common Files\Microsoft Shared*.d??,C:\Program Files (x86)\Common Files\Microsoft Shared*.d??` -resfile 7292 ' -client_lib64 'D:\programme\DrMemory\bin64\debug\drmemorylib.dll;0;-visual_studio -logdir `D:\programme\DrMemory\drmemory\logs` -symcache_dir `D:\programme\DrMemory\drmemory\logs\symcache` -lib_blocklist_default `C:\WINDOWS*.d??,C:\Program Files\Common Files\Microsoft Shared*.d??,C:\Program Files (x86)\Common Files\Microsoft Shared*.d??` -resfile 7292 ' -code_api -probe_api -stack_size 56K -disable_traces -no_enable_traces -max_elide_jmp 0 -max_elide_call 0 -no_shared_traces -bb_ibl_targets -bb_single_restore_prefix -no_shared_trace_ibl_routine -no_enable_reset -no_reset_at_switch_to_os_at_vmm_limit -reset_at_vmm_percent_free_limit 0 -no_reset_at_vmm_full -reset_at_commit_free_limit 0B -reset_every_nth_pending 0 -vm_size 256M -no_early_inject -no_inline_ignored_syscalls -native_exec_default_list '' -no_native_exec_managed_code -no_indcall2direct >
             Dr. Memory version 2.5.0
             Running "D:\eclipseWS\something\something_head_exe\exe\Debug\something.exe x/input.inp"
             Using system call file D:\programme\DrMemory\drmemory\logs\symcache\syscalls_x64.txt
    <Invalid opcode encountered>
    <intercept_syscall_wrapper: not hooking NtSetContextThread due to conflict @0x00007ffc61d70205>
    <intercept_syscall_wrapper: not hooking NtCreateThread due to conflict @0x00007ffc61d6da75>
    <intercept_syscall_wrapper: not hooking NtCreateThreadEx due to conflict @0x00007ffc61d6e8c5>
    <intercept_syscall_wrapper: not hooking NtTerminateThread due to conflict @0x00007ffc61d6db15>
    <intercept_syscall_wrapper: not hooking NtSuspendThread due to conflict @0x00007ffc61d70825>
    <intercept_syscall_wrapper: not hooking NtAllocateVirtualMemory due to conflict @0x00007ffc61d6d3b5>
    <intercept_syscall_wrapper: not hooking NtAllocateVirtualMemoryEx due to conflict @0x00007ffc61d6df65>
    <intercept_syscall_wrapper: not hooking NtProtectVirtualMemory due to conflict @0x00007ffc61d6dab5>
    <intercept_syscall_wrapper: not hooking NtMapViewOfSection due to conflict @0x00007ffc61d6d5b5>
    <intercept_syscall_wrapper: not hooking NtMapViewOfSectionEx due to conflict @0x00007ffc61d6f325>
    <intercept_syscall_wrapper: not hooking NtUnmapViewOfSection due to conflict @0x00007ffc61d6d5f5>
    <dr_fragment_app_pc is a DR/client pc>
             ASSERT FAILURE (thread 15512): D:\a\drmemory\drmemory\drmemory\syscall_windows.c:151: opc_is_in_syscall_wrapper(opc) (unknown system call sequence)
    

    Can you make sense of these messages? Is there something wrong with my system?

    opened by elseifthen 0
  • Unable to run SPEC 2017 in 625.x264, 631.deepsjeng, and 657.xz

    Unable to run SPEC 2017 in 625.x264, 631.deepsjeng, and 657.xz

    Dear managers,

    I am doing the data collection when I use Dr.memory(ver. 2.5.19012) to run Spec benchmark 2017. And my test type is ref speed. However, Dr. memory shows errors when running 625.x264, 631.deepsjeng, and 657.xz. And I didn't modify either SPEC 2017 or Dr. memory. Is there any method to fix these problems? I have attached the result and command used during testing. Thank you for your help! My system is Ubuntu 20.04, GCC version: 9.4.0 11 12 13

    opened by ZWUGA 1
  • Failed to take over all threads after multiple attempts.

    Failed to take over all threads after multiple attempts.

    Hi all Thanks to release this useful lib for check dynamic memory when i tride compile with mingw32(msys2) and use dr.memory to debug

    ./drmemory.exe /d/static_test/G_memory_test/build/G_memory_test.exe

    i got this error ~~Dr.M~~ Dr. Memory version 2.4.0 ~~Dr.M~~ Running "D:/static_test/G_memory_test/build/G_memory_test.exe" ~~Dr.M~~ Using system call file C:\Users\KARTHY\AppData\Roaming\Dr. Memory\symcache\syscalls_wow64.txt <Application D:\static_test\G_memory_test\build\G_memory_test.exe (12480). Failed to take over all threads after multiple att empts.> ~~Dr.M~~ WARNING: application exited with abnormal code 0x28

    this is my CMakeFile and source file, thanks a lot!

    `cmake_minimum_required(VERSION 3.5)

    project(G_memory_test)

    add_definitions(-ggdb) add_definitions(-static-libgcc) add_definitions(-static-libstdc++)

    add_executable(${PROJECT_NAME} ${PROJECT_SOURCE_DIR}/main.cpp )`

    `#include

    void test1(); void test2(); void test3(); void test4();

    int main() { test4(); std::cout << "ok" << std::endl; return 0; }

    void test1() { char ptr; for (int i = 0; i<100; i++) { ptr = (char)malloc(i); if (i % 2){free(ptr)}; } }

    void test2() { char x = (char)malloc(8); char c = *(x + 8); // buffer overlow free(x); c = *x; // read free memory }

    typedef struct T_ { char a; char b; }T;

    void test3() { T a, b; char x; a.a = 'a'; a.b = 'b'; b.a = x; if (b.a == 10) memcpy(&b, &a, sizeof(T)); }

    void test4() { char * ptr = NULL; ptr = new char; free(ptr); free(ptr); }`

    Status-NeedInfo 
    opened by karthyhu 1
  • Dr. Memory failed to start the target application, perhaps due to interference from invasive security software. - umppc15806

    Dr. Memory failed to start the target application, perhaps due to interference from invasive security software. - umppc15806

    Describe the bug Hi drmemory,

    I have build a large library on C++ on Windows which is a scientific code for integration of materials behaviour under loading in time. The library is based on in-house source code, external libraries (e.g. blas/lapack MKL implementation) and a large amount of win32 dlls. Following some runs I noticed a memory leak; the code is too large to do step by step so I picked your tool.

    I followed the workflow which was provided in the Dr Memory doc. After calling drmemory.exe and the executable which calls the library in question above, the following errors is output:

    **drmemory.exe -- C:\Users\shell_memory_check_neml.exe
    ~~Dr.M~~ WARNING: unable to locate results file: can't open C:\Users\\AppData\Roaming\Dr. Memory/resfile.25028 (code=2).
    Dr. Memory failed to start the target application, perhaps due to
    interference from invasive security software.
    Try disabling other software or running in a virtual machine.
    WARNING: Examine the following unusual libraries in this process to help identify
    invasive software that may have affected the target application:**
    
            C:\Windows\System32\umppc15806.dll
    
    **Please file a bug about this at http://drmemory.org/issues
    ~~Dr.M~~ WARNING: application exited with abnormal code 0xc000041d**
    

    The library mentioned is built according to the documentation of Dr Memory in /debug:full. During the build on Visual Studio, I noticed that the .pdb file for this specific dll is not loaded, my expectation is that it is missing or not produced. There is little info on these umppc files as well (online, or documentation) which makes it harder to debug. After looking at the manual for Dr Memory I was unable to determine if and how I can suppress this specific dll from being probed by Dr Memory.

    My thinking and question is - is there a way to block Dr Memory from reading this specific dll; or other ways to bypass this error?

    Thanks in advance. M

    To Reproduce I don't think this is reproducible as it is linked to local implementation of libraries.

    Please also answer these questions drawn from https://drmemory.org/page_help.html#sec_narrow :

    • Does the problem go away when running in light mode (pass -light to Dr. Memory)? No
    • Does the problem go away when running with the options -leaks_only -no_count_leaks -no_track_allocs? No
    • Does the problem go away when running under plain DynamoRIO? Do this by running dynamorio/bin32/drrun -- <application and args> or dynamorio/bin64/drrun -- <application and args> depending on the bitwidth of your applicaiton. (Ignore warnings about "incomplete installation".) No
    • What happens with the debug version of Dr. Memory and of its underlying engine DynamoRIO? Try this by passing -debug -dr_debug -pause_at_assert. Are any messages reported? No messages reported; same result; output below:

    Expected behavior What I was expecting to happen is that Dr Memory will evaluate the performance as the code is running for some simple dummy inputs and highlight where omission of some delete / delete[] cause excursion in memory. The library I want to evaluate should allow for this as it is built with extensive smart pointer use and structure, but the umppc dll is preventing from running.

    Screenshots or Pasted Text If applicable, add screenshots to help explain your problem. For text, please cut and paste the text here, delimited by lines consisting of three backtics to render it verbatim, like this:

    ```
    ```
    **~~Dr.M~~ WARNING: unable to locate results file: can't open C:\Users\\AppData\Roaming\Dr. Memory/resfile.2656 (code=2).
    Dr. Memory failed to start the target application, perhaps due to
    interference from invasive security software.
    Try disabling other software or running in a virtual machine.
    WARNING: Examine the following unusual libraries in this process to help identify
    invasive software that may have affected the target application:
    
            C:\Windows\System32\umppc15806.dll
    
    Please file a bug about this at http://drmemory.org/issues
    ~~Dr.M~~ WARNING: application exited with abnormal code 0xc000041d**
    ```
    ```
    

    Versions

    • What version of Dr. Memory are you using? - Dr. Memory version 2.5.0 -- build 0
    • Does the latest build from https://drmemory.org/page_download.html#sec_latest_build solve the problem? - No
    • What operating system version are you running on? ("Windows 10" is not sufficient: give the release number.) - Windows 10 Pro 21H2 19044.1889
    • Is your application 32-bit or 64-bit? 64-bit os, x64 processor

    Additional context Add any other context about the problem here.

    opened by balamurata123 2
  • UNADDRESSABLE ACCESS beyond top of stack

    UNADDRESSABLE ACCESS beyond top of stack

    Describe the bug I want to see if Dr Memory can analyse if an index is out of range inside an array.

    To Reproduce I used this C code.

    int main() {
    	clock_t start, end;
    	float cpu_time_used;
    	start = clock();
    
    	int a[2] = {3, 5};
    	printf("a = %i", a[1]);
    
    	end = clock();
    	cpu_time_used = ((float) (end - start)) / CLOCKS_PER_SEC;
    	printf("\nTotal speed  was %f\n", cpu_time_used);
    
    
    	return EXIT_SUCCESS;
    }
    

    I drag my .exe file to Dr.Memory file.

    Expected behavior I did not expect errors.

    Screenshots or Pasted Text

    Dr. Memory version 2.5.0 build 0 built on Oct 18 2021 03:01:22
    Windows version: WinVer=105;Rel=2009;Build=22000;Edition=Professional
    Dr. Memory results for pid 10616: "CControl.exe"
    Application cmdline: ""C:\Users\dmn\OneDrive - ITH\Dokument\Projekt\Eclipse\CControl\Debug\CControl.exe""
    Recorded 124 suppression(s) from default C:\Program Files (x86)\Dr. Memory\bin64\suppress-default.txt
    
    Error #1: UNADDRESSABLE ACCESS beyond top of stack: reading 0x000000a30e7ff3e0-0x000000a30e7ff3e8 8 byte(s)
    # 0 ___chkstk_ms                            [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:132]
    # 1 _pei386_runtime_relocator
    # 2 __tmainCRTStartup
    # 3 .l_start    
    # 4 ntdll.dll!RtlUserThreadStart
    Note: @0:00:00.095 in thread 19384
    Note: 0x000000a30e7ff3e0 refers to 664 byte(s) beyond the top of the stack 0x000000a30e7ff678
    Note: instruction: or     $0x0000000000000000 (%rcx) -> (%rcx)
    
    Error #2: UNADDRESSABLE ACCESS beyond top of stack: reading 0x000000a30e7ff4c0-0x000000a30e7ff4c8 8 byte(s)
    # 0 ___chkstk_ms                       [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:132]
    # 1 __pformat_int.isra.0               [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 2 __mingw_pformat                    [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 3 __mingw_vfprintf                   [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 4 printf      
    # 5 main        
    Note: @0:00:00.128 in thread 19384
    Note: 0x000000a30e7ff4c0 refers to 8 byte(s) beyond the top of the stack 0x000000a30e7ff4c8
    Note: instruction: or     $0x0000000000000000 (%rcx) -> (%rcx)
    
    Error #3: POSSIBLE LEAK 98 direct bytes 0x000001cd66d701c0-0x000001cd66d70222 + 0 indirect bytes
    # 0 replace_malloc                   [d:\a\drmemory\drmemory\common\alloc_replace.c:2580]
    # 1 msvcrt.dll!malloc_crt
    # 2 msvcrt.dll!_setargv  
    # 3 msvcrt.dll!_getmainargs
    # 4 pre_cpp_init
    # 5 msvcrt.dll!initterm  
    # 6 __tmainCRTStartup
    # 7 .l_start    
    # 8 ntdll.dll!RtlUserThreadStart
    
    ===========================================================================
    FINAL SUMMARY:
    
    DUPLICATE ERROR COUNTS:
    	Error #   1:      2
    	Error #   2:      2
    
    SUPPRESSIONS USED:
    
    ERRORS FOUND:
          2 unique,     4 total unaddressable access(es)
          0 unique,     0 total uninitialized access(es)
          0 unique,     0 total invalid heap argument(s)
          0 unique,     0 total GDI usage error(s)
          0 unique,     0 total handle leak(s)
          0 unique,     0 total warning(s)
          0 unique,     0 total,      0 byte(s) of leak(s)
          1 unique,     1 total,     98 byte(s) of possible leak(s)
    ERRORS IGNORED:
          3 unique,     3 total,    113 byte(s) of still-reachable allocation(s)
             (re-run with "-show_reachable" for details)
    Details: C:\Users\dmn\AppData\Roaming\Dr. Memory\DrMemory-CControl.exe.10616.000\results.txt
    

    If I use this code where the the index is out of range.

    int main() {
    	clock_t start, end;
    	float cpu_time_used;
    	start = clock();
    
    	int a[2] = {3, 5};
    	printf("a = %i", a[2]);
    
    	end = clock();
    	cpu_time_used = ((float) (end - start)) / CLOCKS_PER_SEC;
    	printf("\nTotal speed  was %f\n", cpu_time_used);
    
    
    	return EXIT_SUCCESS;
    }
    

    Dr Memory gives this output. As you can see, it's one more error. But not so much more information.

    Dr. Memory version 2.5.0 build 0 built on Oct 18 2021 03:01:22
    Windows version: WinVer=105;Rel=2009;Build=22000;Edition=Professional
    Dr. Memory results for pid 3344: "CControl.exe"
    Application cmdline: ""C:\Users\dmn\OneDrive - ITH\Dokument\Projekt\Eclipse\CControl\Debug\CControl.exe""
    Recorded 124 suppression(s) from default C:\Program Files (x86)\Dr. Memory\bin64\suppress-default.txt
    
    Error #1: UNADDRESSABLE ACCESS beyond top of stack: reading 0x0000006819dff7a0-0x0000006819dff7a8 8 byte(s)
    # 0 ___chkstk_ms                            [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:132]
    # 1 _pei386_runtime_relocator
    # 2 __tmainCRTStartup
    # 3 .l_start    
    # 4 ntdll.dll!RtlUserThreadStart
    Note: @0:00:00.094 in thread 16516
    Note: 0x0000006819dff7a0 refers to 664 byte(s) beyond the top of the stack 0x0000006819dffa38
    Note: instruction: or     $0x0000000000000000 (%rcx) -> (%rcx)
    
    Error #2: UNADDRESSABLE ACCESS beyond top of stack: reading 0x0000006819dff880-0x0000006819dff888 8 byte(s)
    # 0 ___chkstk_ms                       [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:132]
    # 1 __pformat_int.isra.0               [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 2 __mingw_pformat                    [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 3 __mingw_vfprintf                   [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 4 printf      
    # 5 main        
    Note: @0:00:00.123 in thread 16516
    Note: 0x0000006819dff880 refers to 8 byte(s) beyond the top of the stack 0x0000006819dff888
    Note: instruction: or     $0x0000000000000000 (%rcx) -> (%rcx)
    
    Error #3: UNINITIALIZED READ: reading register rcx
    # 0 __pformat_int.isra.0               [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 1 __mingw_pformat                    [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 2 __mingw_vfprintf                   [../../../../../src/gcc-11.2.0/libgcc/config/i386/cygwin.S:138]
    # 3 printf      
    # 4 main        
    Note: @0:00:00.124 in thread 16516
    Note: instruction: test   %rcx %rcx
    
    Error #4: POSSIBLE LEAK 98 direct bytes 0x0000016e036c01c0-0x0000016e036c0222 + 0 indirect bytes
    # 0 replace_malloc                   [d:\a\drmemory\drmemory\common\alloc_replace.c:2580]
    # 1 msvcrt.dll!malloc_crt
    # 2 msvcrt.dll!_setargv  
    # 3 msvcrt.dll!_getmainargs
    # 4 pre_cpp_init
    # 5 msvcrt.dll!initterm  
    # 6 __tmainCRTStartup
    # 7 .l_start    
    # 8 ntdll.dll!RtlUserThreadStart
    
    ===========================================================================
    FINAL SUMMARY:
    
    DUPLICATE ERROR COUNTS:
    	Error #   1:      2
    	Error #   2:      2
    
    SUPPRESSIONS USED:
    
    ERRORS FOUND:
          2 unique,     4 total unaddressable access(es)
          1 unique,     1 total uninitialized access(es)
          0 unique,     0 total invalid heap argument(s)
          0 unique,     0 total GDI usage error(s)
          0 unique,     0 total handle leak(s)
          0 unique,     0 total warning(s)
          0 unique,     0 total,      0 byte(s) of leak(s)
          1 unique,     1 total,     98 byte(s) of possible leak(s)
    ERRORS IGNORED:
          3 unique,     3 total,    113 byte(s) of still-reachable allocation(s)
             (re-run with "-show_reachable" for details)
    Details: C:\Users\dmn\AppData\Roaming\Dr. Memory\DrMemory-CControl.exe.3344.000\results.txt
    

    Versions

    • Dr Memory 2.5.0
    • Windows 11

    Additional context

    • Min GW 64 bit
    opened by DanielMartensson 1
Releases(cronbuild-2.5.19327)
Owner
DynamoRIO
Dynamic Instrumentation Tool Platform
DynamoRIO
RV-Debugger-BL702 is an opensource project that implement a JTAG+UART debugger with BL702C-A0.

BL702 is highly integrated BLE and Zigbee combo chipset for IoT applications, contains 32-bit RISC-V CPU with FPU, frequency up to 144MHz, with 132KB RAM and 192 KB ROM, 1Kb eFuse, 512KB embedded Flash, USB2.0 FS device interface, and many other features.

Sipeed 100 Jan 1, 2023
Visualization Library is a C++ middleware for high-performance 2D and 3D graphics applications based on OpenGL 1.x-4.x supporting Windows, Linux and Mac OS X.

Visualization Library 2.2 Gallery About Visualization Library is a C++ middleware for high-performance 2D and 3D graphics applications based on the in

Michele 313 Nov 8, 2022
Serial Data Monitor is a multiplatform (Windows, Linux, Mac, ...) tool to interactively receive/edit/monitor data and send commands to an embedded system via the serial bus

See wiki for full documentation Serial Data Monitor Description Serial Data Monitor is a multiplatform (Windows, Linux, Mac, ...) tool to interactivel

monnoliv 4 Oct 29, 2021
Windscribe 2.0 desktop client for Windows, Mac and Linux

Windscribe 2.0 Desktop Application This repo contains the complete source code for the Windscribe 2.0 app. This includes installer, service/helper, ba

Windscribe 362 Jan 3, 2023
Free (libre) font editor for Windows, Mac OS X and GNU+Linux

FontForge FontForge is a free (libre) font editor for Windows, Mac OS X and GNU+Linux. Use it to create, edit and convert fonts in OpenType, TrueType,

null 5k Dec 27, 2022
Qt5 "Hello, world!" app for Linux, BSD, Windows, Mac.

hello world in qt5 Contributions in all forms (code, bug reports, community engagement, localization, etc) are warmly welcomed. Development activity I

Jakob Flierl 2 Jan 26, 2022
IDA Debugger Module to Dynamically Synchronize Memory and Registers with third-party Backends (Tenet, Unicorn, GDB, etc.)

IDA Debug Bridge IDA Debugger Module to Dynamically Synchronize Memory and Registers with third-party Backends (Tenet, Unicorn, GDB, etc.) By synchron

null 9 Sep 5, 2022
Make your Pop!_OS (Ubuntu Linux) shortcut key experience more like Mac OS

Meta Mac Enables a Mac OS-like shortcut key experience on Pop!_OS (and most Ubuntu-based Linux distros). Installation Download or git clone this repos

Duane Johnson 14 Dec 31, 2022
A Mac like Control Center for Windows

A Mac like Control Center for Windows.

LoadingName 1 Mar 8, 2022
A simple PoC to demonstrate that is possible to write Non writable memory and execute Non executable memory on Windows

WindowsPermsPoC A simple PoC to demonstrate that is possible to write Non writable memory and execute Non executable memory on Windows You can build i

Lorenzo Maffia 55 Jul 21, 2022
A keystone engine powered Windows Debugger extension

DbgKeystone A Keystone engine powered Windows Debugger extension Reasoning WinDbg's default assember (the a command) can't handle instructions involvi

Michael B. 12 Nov 9, 2022
An open-source x64/x32 debugger for windows.

x64dbg An open-source binary debugger for Windows, aimed at malware analysis and reverse engineering of executables you do not have the source code fo

x64dbg 39.6k Dec 31, 2022
Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2

Filament Filament is a real-time physically based rendering engine for Android, iOS, Linux, macOS, Windows, and WebGL. It is designed to be as small a

Google 15.1k Jan 8, 2023
First open source android modding library for Geometry Dash Based on Hooking-and-Patching-android-template

Android-ML First open source android modding library for Geometry Dash Based on Hooking-and-Patching-android-template Installation Download this githu

BlackTea ML 21 Jul 17, 2022
A repository for experimenting with elf loading and in-place patching of android native libraries on non-android operating systems.

droidports: A repository for experimenting with elf loading and in-place patching of android native libraries on non-android operating systems. Discla

João Henrique 26 Dec 15, 2022
A customized LGL Android mod menu, containing ESP only for PUBG Mobile 1.3.0 for Android

PUBG Mobile ESP Mod Menu A customized LGL mod menu, containing ESP only for PUBG Mobile 1.3.0 for Android. Everything are fixed so it works with both

null 42 Mar 19, 2022
A simple library that helps Android developers to execute JavaScript code from Android native side easily without using Webview.

AndroidJSModule A simple library that helps Android developers to execute JavaScript code from Android native side easily without using Webview. Insta

Hung Nguyen 5 May 24, 2022
Android NDK samples with Android Studio

NDK Samples This repository contains Android NDK samples with Android Studio C++ integration. These samples use the new CMake Android plugin with C++

Android 9.2k Dec 27, 2022
Get CPU & GPU temperatures and fan and battery statistics from your Mac.

macOS Hardware Stats Get CPU & GPU temperatures and fan and battery statistics from your Mac. This simple script will output a JSON array containing h

tigattack 4 May 5, 2022