Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

malloc test fail in drheapstat on Win-7 #762

Closed
derekbruening opened this issue Nov 28, 2014 · 4 comments
Closed

malloc test fail in drheapstat on Win-7 #762

derekbruening opened this issue Nov 28, 2014 · 4 comments

Comments

@derekbruening
Copy link
Contributor

From zhao...@google.com on January 20, 2012 16:13:27

zhaoqin@ZHAOQIN3-W ~/Workspace/DrMemory/build_suite
$ ctest -S ../drmemory/tests/runsuite.cmake
Using Visual Studio 9 2008 generators
building default config "Debug"
building with args ""
building default config "Release"
building with args ""
building default config "Debug"
building with args ""
building default config "Release"
building with args ""
building default config "Debug"
building with args ""
building default config "Release"
building with args ""
building package in D:/src/cygwin/home/zhaoqin/Workspace/DrMemory/build_suite/build_drmemory-rel-32

RESULTS

drheapstat-dbg-32: 16 tests passed, **** 1 tests failed: ****
malloc => failed to match Dr.H 3 unique, 3 total, 155 byte(s) of leak(s),
found Dr.H 2 unique, 2 total, 96 byte(s) of leak(s) instead
drheapstat-rel-32: 16 tests passed, **** 1 tests failed: ****
malloc => failed to match Dr.H 3 unique, 3 total, 155 byte(s) of leak(s),
found Dr.H 2 unique, 2 total, 96 byte(s) of leak(s) instead
drmemory-cyg-dbg-32: 25 tests passed, **** 1 tests failed: ****
wincrt => stderr failed to match Dr.M 7 unique, 7 total unaddressable
access(es), found Dr.M 8 unique, 8 total unaddressable access(es)
instead
drmemory-cyg-rel-32: build successful; no tests for this build
drmemory-dbg-32: 30 tests passed, **** 1 tests failed: ****
wincrt => stderr failed to match Dr.M 7 unique, 7 total unaddressable
access(es), found Dr.M 8 unique, 8 total unaddressable access(es)
instead
drmemory-rel-32: 30 tests passed, **** 1 tests failed: ****
wincrt => stderr failed to match Dr.M 7 unique, 7 total unaddressable
access(es), found Dr.M 8 unique, 8 total unaddressable access(es)
instead
final package: build successful; no tests for this build

However, if run individual malloc test, it passed:

zhaoqin@ZHAOQIN3-W ~/Workspace/DrMemory/build_suite/build_drheapstat-dbg-32
$ ctest -V -I 2,2
UpdateCTestConfiguration from :D:/src/cygwin/home/zhaoqin/Workspace/DrMemory/build_suite/build_drheapstat-dbg-32/DartConfiguration.tcl
UpdateCTestConfiguration from :D:/src/cygwin/home/zhaoqin/Workspace/DrMemory/build_suite/build_drheapstat-dbg-32/DartConfiguration.tcl
Test project D:/src/cygwin/home/zhaoqin/Workspace/DrMemory/build_suite/build_drheapstat-dbg-32
Constructing a list of tests
Done constructing a list of tests
Checking test dependency graph...
Checking test dependency graph end
test 2
Start 2: malloc

2: Test command: "C:\Program Files (x86)\CMake 2.8\bin\cmake.exe" "-D" "cmd:STRING=D:/src/cygwin/bin/perl.exe@../bin/drheapstat.pl@-debug@-dr_debug@-dr@{DRMEMORY_CTEST_DR_DIR}/..@-dr_ops@-dumpcore_mask@@0x87fd@@-stderr_mask@@15@@-msgbox_mask@@0@-callstack_style@0x27@--@./malloc.exe" "-D" "TOOL_DR_HEAPSTAT:BOOL=ON" "-D" "outpat:STRING={DRMEMORY_CTEST_SRC_DIR}/malloc.out" "-D" "respat:STRING={DRMEMORY_CTEST_SRC_DIR}/malloc.res" "-D" "nudge:STRING=D:/src/cygwin/bin/perl.exe@../bin/drheapstat.pl@-debug@-dr_debug@-dr@{DRMEMORY_CTEST_DR_DIR}/.." "-D" "VMKERNEL:BOOL=OFF" "-D" "USE_DRSYMS:BOOL=OFF" "-D" "toolbindir:STRING={DRMEMORY_CTEST_DR_DIR}/../bin32" "-D" "DRMEMORY_CTEST_SRC_DIR:STRING=D:/src/cygwin/home/zhaoqin/Workspace/DrMemory/drmemory/tests" "-D" "DRMEMORY_CTEST_DR_DIR:STRING=D:/src/cygwin/home/zhaoqin/Workspace/DrMemory/build_suite/build_drheapstat-dbg-32/dynamorio/cmake" "-D" "CMAKE_SYSTEM_VERSION:STRING=6.1" "-D" "postcmd:STRING=D:/src/cygwin/bin/perl.exe@../bin/drheapstat.pl@-debug@-dr_debug@-dr@{DRMEMORY_CTEST_DR_DIR}/..@-view_leaks@-callstack_modname_hide@@''@-callstack_style@@0x21@-x@./malloc.exe@-profdir" "-P" "./runtest.cmake"
2: Test timeout computed to be: 9.99988e+006
1/1 Test #2: malloc ........................... Passed 8.28 sec

100% tests passed, 0 tests failed out of 1

Total Test time (real) = 8.36 sec

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

@derekbruening
Copy link
Contributor Author

From zhao...@google.com on January 20, 2012 13:16:14

The failure is non-deterministic.

@derekbruening
Copy link
Contributor Author

From bruen...@google.com on June 18, 2012 08:24:41

** TODO (issue #762) malloc drheapstat leak count off

I've started seeing this w/ both VS2008 and VS2010 on Win7 machines

for me, it's missing this leak:
: LEAK 16 direct bytes + 48 indirect bytes
malloc.c:251

ERRORS FOUND:
2 unique, 2 total, 91 byte(s) of leak(s)
1 unique, 1 total, 16 byte(s) of possible leak(s)

Error #1: LEAK 42 direct bytes 0x00fb2200-0x00fb222a + 17 indirect bytes

0 malloc.exe!main+0x465 [e:\src\drmemory\git\src\tests\malloc.c:219+0x8]

1 malloc.exe!__tmainCRTStartup+0x10e [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:586+0x16]

2 KERNEL32.dll!BaseThreadInitThunk+0xd

3 ntdll.dll!__RtlUserThreadStart+0x22

4 ntdll.dll!_RtlUserThreadStart+0x1a

Error #2: POSSIBLE LEAK 16 direct bytes 0x00fb8030-0x00fb8040 + 0 indirect bytes

0 malloc.exe!main+0x516 [e:\src\drmemory\git\src\tests\malloc.c:256+0x8]

1 malloc.exe!__tmainCRTStartup+0x10e [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:586+0x16]

2 KERNEL32.dll!BaseThreadInitThunk+0xd

3 ntdll.dll!__RtlUserThreadStart+0x22

4 ntdll.dll!_RtlUserThreadStart+0x1a

Error #3: LEAK 16 direct bytes 0x00fb8048-0x00fb8058 + 16 indirect bytes

0 malloc.exe!main+0x524 [e:\src\drmemory\git\src\tests\malloc.c:257+0x8]

1 malloc.exe!__tmainCRTStartup+0x10e [f:\dd\vctools\crt_bld\self_x86\crt\src\crtexe.c:586+0x16]

2 KERNEL32.dll!BaseThreadInitThunk+0xd

3 ntdll.dll!__RtlUserThreadStart+0x22

4 ntdll.dll!_RtlUserThreadStart+0x1a

@derekbruening
Copy link
Contributor Author

From bruen...@google.com on June 18, 2012 19:30:06

based on Qin's prior analysis and what I'm seeing this is almost certainly issue #292 (RtlpHeapFailureInfo) and drheapstat just doesn't have online syms.

I'm going to add online syms but just for this (too much work to change rest of drheapstat: that's covered by issue #828 and issue #926 )

Owner: bruen...@google.com

@derekbruening
Copy link
Contributor Author

From derek.br...@gmail.com on June 20, 2012 07:06:15

This issue was closed by revision r900 .

Status: Fixed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant