DynamoRIO / DynamoRIO/drmemory

false positive on mismatch error from browser_tests NaClBrowserTestGLibc.ExitStatus254

Open
#1,574 2 comments 0 reactions 0 assignees View on GitHub
Bug-FalsePositive Migrated Priority-Medium
Dominant language
C
Stars
2.7k
Forks
290
PR merge metrics
No merged PRs in 30d

Description

_From [zhao...@google.com](https://code.google.com/u/106321947286816917100/) on June 22, 2014 15:08:48_

.\tools\valgrind\chrome_tests.bat --tool drmemory_light -b .\out\Release -t browser_tests --gtest_filter=NaClBrowserTestGLibc.ExitStatus254

[ RUN ] NaClBrowserTestGLibc.ExitStatus254
Still waiting for the following processes to finish:
python "D:/src/chrome/src\tools\valgrind\browser_wrapper_win.py" "D:\src\chrome\src\tools\valgrind....\third_party\drmemory\unpacked\bin\drmemory.exe" -suppress "D:\src\c
hrome\src\tools\valgrind\drmemory\suppressions.txt" -dr_ops -stderr_mask -dr_ops 12 -logdir "C:\Users\zhaoqin\AppData\LocalLow\vg_logs_c49v5j" -symcache_dir "C:\Users\zhaoqin\AppDa
ta\LocalLow\drmemory.symcache" -batch -no_summary -callstack_max_frames 40 -delay_frees_stack -count_leaks -leak_scan -callstack_srcfile_prefix "build\src,chromium\src,crt_build\se
lf_x86" -callstack_modname_hide _drmemory_,chrome.dll -callstack_truncate_below testing::Test::Run,testing::TestInfo::Run,testing::internal::Handle_ExceptionsInMethodIfSupported_,M
essageLoop::Run,MessageLoop::RunTask,RunnableMethod_,DispatchToMethod_,base::internal::Invoker_::DoInvoke_,base::internal::RunnableAdapter_::Run_,start_thread,main,BaseThreadInitTh
unk -light -- ".\out\Release\browser_tests.exe" --allow-file-access --gtest_also_run_disabled_tests --gtest_filter=NaClBrowserTestGLibc.ExitStatus254 --gtest_print_time --no-sandbo
x --single-process-tests --single_process --test-tiny-timeout=1000 --ui-test-action-max-timeout=800000 --ui-test-action-timeout=400000 "--user-data-dir=C:\Users\zhaoqin\AppData\Loc
al\Temp\scoped_dir686796_11468\d686796_2099"
~~Dr.M~~
~~Dr.M~~ Error `#1`: INVALID HEAP ARGUMENT: allocated with malloc, freed with operator delete
~~Dr.M~~ # 0 replace_operator_delete [e:\b\build\slave\win-builder\drmemory\common\alloc_replace.c:2640]
~~Dr.M~~ # 1 osmesa.dll!OSMesaDestroyContext [d:\src\chrome\src\third_party\mesa\src\src\mesa\drivers\osmesa\osmesa.c:817]
~~Dr.M~~ # 2 gfx::GLContextOSMesa::`scalar deleting destructor'
\~~Dr.M~~ # 3 gpu::CollectGraphicsInfoGL [d:\src\chrome\src\gpu\config\gpu_info_collector.cc:129]
\~~Dr.M~~ # 4 gpu::CollectContextGraphicsInfo [d:\src\chrome\src\gpu\config\gpu_info_collector_win.cc:475]
\~~Dr.M~~ # 5 content::`anonymous namespace'::CollectGraphicsInfo [d:\src\chrome\src\content\gpu\gpu_main.cc:399]
~~Dr.M~~ # 6 content::GpuMain [d:\src\chrome\src\content\gpu\gpu_main.cc:271]
~~Dr.M~~ # 7 content::RunNamedProcessTypeMain [d:\src\chrome\src\content\app\content_main_runner.cc:416]
~~Dr.M~~ # 8 content::ContentMainRunnerImpl::Run [d:\src\chrome\src\content\app\content_main_runner.cc:762]
~~Dr.M~~ # 9 content::ContentMain [d:\src\chrome\src\content\app\content_main.cc:19]
~~Dr.M~~ `#10` content::LaunchTests [d:\src\chrome\src\content\public\test\test_launcher.cc:474]
~~Dr.M~~ `#11` LaunchChromeTests [d:\src\chrome\src\chrome\test\base\chrome_test_launcher.cc:129]
~~Dr.M~~ `#12` main [d:\src\chrome\src\chrome\test\base\browser_tests_main.cc:21]
~~Dr.M~~ Note: @0:00:08.350 in thread 687136
~~Dr.M~~ Note: memory was allocated here:
~~Dr.M~~ Note: # 0 replace_calloc [e:\b\build\slave\win-builder\drmemory\common\alloc_replace.c:2373]
~~Dr.M~~ Note: # 1 osmesa.dll!_mesa_create_visual [d:\src\chrome\src\third_party\mesa\src\src\mesa\main\context.c:224]
~~Dr.M~~ Note: # 2 osmesa.dll!OSMesaCreateContextExt [d:\src\chrome\src\third_party\mesa\src\src\mesa\drivers\osmesa\osmesa.c:699]
~~Dr.M~~ Note: # 3 gfx::GLContextOSMesa::Initialize [d:\src\chrome\src\ui\gl\gl_context_osmesa.cc:34]
~~Dr.M~~ Note: # 4 gfx::GLContext::CreateGLContext [d:\src\chrome\src\ui\gl\gl_context_win.cc:31]
~~Dr.M~~ Note: # 5 `anonymous namespace'::InitializeGLContext [d:\src\chrome\src\gpu\config\gpu_info_collector.cc:39]
\~~Dr.M~~ Note: # 6 gpu::CollectGraphicsInfoGL [d:\src\chrome\src\gpu\config\gpu_info_collector.cc:93]
\~~Dr.M~~ Note: # 7 gpu::CollectContextGraphicsInfo [d:\src\chrome\src\gpu\config\gpu_info_collector_win.cc:475]
\~~Dr.M~~ Note: # 8 content::`anonymous namespace'::CollectGraphicsInfo [d:\src\chrome\src\content\gpu\gpu_main.cc:399]
~~Dr.M~~ Note: # 9 content::GpuMain [d:\src\chrome\src\content\gpu\gpu_main.cc:271]
~~Dr.M~~ Note: `#10` content::RunNamedProcessTypeMain [d:\src\chrome\src\content\app\content_main_runner.cc:416]
~~Dr.M~~ Note: `#11` content::ContentMainRunnerImpl::Run [d:\src\chrome\src\content\app\content_main_runner.cc:762]
~~Dr.M~~ Note: `#12` content::ContentMain [d:\src\chrome\src\content\app\content_main.cc:19]
~~Dr.M~~ Note: `#13` content::LaunchTests [d:\src\chrome\src\content\public\test\test_launcher.cc:474]
~~Dr.M~~ Note: `#14` LaunchChromeTests [d:\src\chrome\src\chrome\test\base\chrome_test_launcher.cc:129]
~~Dr.M~~ Note: `#15` main [d:\src\chrome\src\chrome\test\base\browser_tests_main.cc:21]

d:\src\chrome\src\ui\gl\gl_context_osmesa.cc:34
struct gl_config *
_mesa_create_visual( GLboolean dbFlag,
...
GLint numSamples )
{
struct gl_config *vis = CALLOC_STRUCT(gl_config);
...

d:\src\chrome\src\third_party\mesa\src\src\mesa\drivers\osmesa\osmesa.c:817
GLAPI void GLAPIENTRY
OSMesaDestroyContext( OSMesaContext osmesa )
{
if (osmesa) {
...
_mesa_destroy_visual( osmesa->gl_visual );

at src/third_party/mesa/src/src/mesa/main/context.c
void
_mesa_destroy_visual( struct gl_config *vis )
{
free(vis);
}

So it is calloc free, not delete

_Original issue: http://code.google.com/p/drmemory/issues/detail?id=1574_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.