================================================================= ==28553==ERROR: AddressSanitizer: heap-use-after-free on address 0x60b00000b530 at pc 0x7fc7d21e6707 bp 0x7fffbb49e6a0 sp 0x7fffbb49e698 READ of size 8 at 0x60b00000b530 thread T0 (chrome) #0 0x7fc7d21e6706 in gpu::gles2::MailboxManagerImpl::ProduceTexture(gpu::Mailbox const&, gpu::gles2::Texture*) gpu/command_buffer/service/mailbox_manager_impl.cc:39:21 #1 0x7fc7d21b5ea3 in gpu::gles2::GLES2DecoderImpl::DoProduceTextureDirectCHROMIUM(unsigned int, unsigned int, signed char const*) gpu/command_buffer/service/gles2_cmd_decoder.cc:13730:3 #2 0x7fc7d213e809 in gpu::gles2::GLES2DecoderImpl::HandleProduceTextureDirectCHROMIUMImmediate(unsigned int, void const*) gpu/command_buffer/service/gles2_cmd_decoder_autogen.h:4627:3 #3 0x7fc7d2173d3a in gpu::error::Error gpu::gles2::GLES2DecoderImpl::DoCommandsImpl(unsigned int, void const*, int, int*) gpu/command_buffer/service/gles2_cmd_decoder.cc:4603:18 #4 0x7fc7d2287ed0 in gpu::CommandParser::ProcessCommands(int) gpu/command_buffer/service/cmd_parser.cc:51:25 #5 0x7fc7d21d5c7e in gpu::GpuScheduler::PutChanged() gpu/command_buffer/service/gpu_scheduler.cc:60:13 #6 0x7fc7d2069ede in content::GpuCommandBufferStub::OnAsyncFlush(int, unsigned int, std::__1::vector > const&) content/common/gpu/gpu_command_buffer_stub.cc:841:3 #7 0x7fc7d2062685 in DispatchToMethodImpl > &), int, unsigned int, std::__1::vector > , 0, 1, 2> base/tuple.h:254:3 #8 0x7fc7d2062685 in DispatchToMethod > &), int, unsigned int, std::__1::vector > > base/tuple.h:261:0 #9 0x7fc7d2062685 in Dispatch > &)> content/common/gpu/gpu_messages.h:570:0 #10 0x7fc7d2062685 in content::GpuCommandBufferStub::OnMessageReceived(IPC::Message const&) content/common/gpu/gpu_command_buffer_stub.cc:304:0 #11 0x7fc7d2033387 in content::MessageRouter::RouteMessage(IPC::Message const&) content/common/message_router.cc:54:10 #12 0x7fc7d204ca7e in content::GpuChannel::HandleMessage() content/common/gpu/gpu_channel.cc:842:15 #13 0x7fc7c5f2b084 in Run base/callback.h:396:12 #14 0x7fc7c5f2b084 in base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask const&) base/debug/task_annotator.cc:51:0 #15 0x7fc7c5e40d3f in base::MessageLoop::RunTask(base::PendingTask const&) base/message_loop/message_loop.cc:481:3 #16 0x7fc7c5e421c4 in DeferOrRunPendingTask base/message_loop/message_loop.cc:490:5 #17 0x7fc7c5e421c4 in base::MessageLoop::DoWork() base/message_loop/message_loop.cc:602:0 #18 0x7fc7c5f26d46 in HandleDispatch base/message_loop/message_pump_glib.cc:267:7 #19 0x7fc7c5f26d46 in base::(anonymous namespace)::WorkSourceDispatch(_GSource*, int (*)(void*), void*) base/message_loop/message_pump_glib.cc:109:0 #20 0x7fc7c1acfe03 in g_main_context_dispatch ??:0:0 0x60b00000b530 is located 32 bytes inside of 104-byte region [0x60b00000b510,0x60b00000b578) freed by thread T0 (chrome) here: #0 0x7fc7c5187c9b in operator delete(void*) ??:0:0 #1 0x7fc7d21e6f0b in __deallocate buildtools/third_party/libc++/trunk/include/new:164:3 #2 0x7fc7d21e6f0b in deallocate buildtools/third_party/libc++/trunk/include/memory:1636:0 #3 0x7fc7d21e6f0b in deallocate buildtools/third_party/libc++/trunk/include/memory:1447:0 #4 0x7fc7d21e6f0b in erase buildtools/third_party/libc++/trunk/include/__tree:1986:0 #5 0x7fc7d21e6f0b in erase buildtools/third_party/libc++/trunk/include/__tree:1995:0 #6 0x7fc7d21e6f0b in erase buildtools/third_party/libc++/trunk/include/map:1816:0 #7 0x7fc7d21e6f0b in gpu::gles2::MailboxManagerImpl::TextureDeleted(gpu::gles2::Texture*) gpu/command_buffer/service/mailbox_manager_impl.cc:66:0 #8 0x7fc7d225b71c in ~Texture gpu/command_buffer/service/texture_manager.cc:346:5 #9 0x7fc7d225b71c in gpu::gles2::Texture::RemoveTextureRef(gpu::gles2::TextureRef*, bool) gpu/command_buffer/service/texture_manager.cc:370:0 #10 0x7fc7d227090c in ~TextureRef gpu/command_buffer/service/texture_manager.cc:1341:3 #11 0x7fc7d227090c in Release base/memory/ref_counted.h:134:0 #12 0x7fc7d227090c in Release base/memory/ref_counted.h:403:0 #13 0x7fc7d227090c in ~scoped_refptr base/memory/ref_counted.h:298:0 #14 0x7fc7d227090c in ~pair buildtools/third_party/libc++/trunk/include/utility:248:0 #15 0x7fc7d227090c in __destroy > > buildtools/third_party/libc++/trunk/include/memory:1589:0 #16 0x7fc7d227090c in destroy > > buildtools/third_party/libc++/trunk/include/memory:1487:0 #17 0x7fc7d227090c in std::__1::__hash_table >, __gnu_cxx::__hash_map_hasher >, base_hash::hash, true>, __gnu_cxx::__hash_map_equal >, std::__1::equal_to, true>, std::__1::allocator > > >::__deallocate(std::__1::__hash_node >, void*>*) buildtools/third_party/libc++/trunk/include/__hash_table:1343:0 #18 0x7fc7d225a61a in clear buildtools/third_party/libc++/trunk/include/__hash_table:1582:9 #19 0x7fc7d225a61a in clear buildtools/third_party/libc++/trunk/include/ext/hash_map:581:0 #20 0x7fc7d225a61a in gpu::gles2::TextureManager::Destroy(bool) gpu/command_buffer/service/texture_manager.cc:297:0 #21 0x7fc7d20d9ee3 in gpu::gles2::ContextGroup::Destroy(gpu::gles2::GLES2Decoder*, bool) gpu/command_buffer/service/context_group.cc:355:5 #22 0x7fc7d216f874 in gpu::gles2::GLES2DecoderImpl::Destroy(bool) gpu/command_buffer/service/gles2_cmd_decoder.cc:4320:5 #23 0x7fc7d2061723 in content::GpuCommandBufferStub::Destroy() content/common/gpu/gpu_command_buffer_stub.cc:503:5 #24 0x7fc7d20605b5 in content::GpuCommandBufferStub::~GpuCommandBufferStub() content/common/gpu/gpu_command_buffer_stub.cc:258:3 #25 0x7fc7d2061bad in content::GpuCommandBufferStub::~GpuCommandBufferStub() content/common/gpu/gpu_command_buffer_stub.cc:257:47 #26 0x7fc7d20575f8 in operator() base/memory/scoped_ptr.h:128:5 #27 0x7fc7d20575f8 in reset base/memory/scoped_ptr.h:244:0 #28 0x7fc7d20575f8 in ~scoped_ptr_impl base/memory/scoped_ptr.h:229:0 #29 0x7fc7d20575f8 in ~scoped_ptr base/memory/scoped_ptr.h:307:0 #30 0x7fc7d20575f8 in content::GpuChannel::OnDestroyCommandBuffer(int) content/common/gpu/gpu_channel.cc:993:0 #31 0x7fc7d20554ae in DispatchToMethodImpl base/tuple.h:320:3 #32 0x7fc7d20554ae in DispatchToMethod base/tuple.h:329:0 #33 0x7fc7d20554ae in DispatchWithSendParams ipc/ipc_message_utils.h:1026:0 #34 0x7fc7d20554ae in Dispatch content/common/gpu/gpu_messages.h:500:0 #35 0x7fc7d20554ae in content::GpuChannel::OnControlMessageReceived(IPC::Message const&) content/common/gpu/gpu_channel.cc:787:0 #36 0x7fc7d204c9e9 in content::GpuChannel::HandleMessage() content/common/gpu/gpu_channel.cc:827:15 #37 0x7fc7c5f2b084 in Run base/callback.h:396:12 #38 0x7fc7c5f2b084 in base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask const&) base/debug/task_annotator.cc:51:0 #39 0x7fc7c5e40d3f in base::MessageLoop::RunTask(base::PendingTask const&) base/message_loop/message_loop.cc:481:3 #40 0x7fc7c5e421c4 in DeferOrRunPendingTask base/message_loop/message_loop.cc:490:5 #41 0x7fc7c5e421c4 in base::MessageLoop::DoWork() base/message_loop/message_loop.cc:602:0 #42 0x7fc7c5f26d46 in HandleDispatch base/message_loop/message_pump_glib.cc:267:7 #43 0x7fc7c5f26d46 in base::(anonymous namespace)::WorkSourceDispatch(_GSource*, int (*)(void*), void*) base/message_loop/message_pump_glib.cc:109:0 #44 0x7fc7c1acfe03 in g_main_context_dispatch ??:0:0 previously allocated by thread T0 (chrome) here: #0 0x7fc7c51876db in operator new(unsigned long) ??:0:0 #1 0x7fc7d21e681f in __allocate buildtools/third_party/libc++/trunk/include/new:156:10 #2 0x7fc7d21e681f in allocate buildtools/third_party/libc++/trunk/include/memory:1634:0 #3 0x7fc7d21e681f in allocate buildtools/third_party/libc++/trunk/include/memory:1439:0 #4 0x7fc7d21e681f in __construct_node > buildtools/third_party/libc++/trunk/include/__tree:1730:0 #5 0x7fc7d21e681f in __insert_multi > buildtools/third_party/libc++/trunk/include/__tree:1828:0 #6 0x7fc7d21e681f in insert, void> buildtools/third_party/libc++/trunk/include/map:1777:0 #7 0x7fc7d21e681f in gpu::gles2::MailboxManagerImpl::InsertTexture(gpu::Mailbox const&, gpu::gles2::Texture*) gpu/command_buffer/service/mailbox_manager_impl.cc:52:0 #8 0x7fc7d21b5ea3 in gpu::gles2::GLES2DecoderImpl::DoProduceTextureDirectCHROMIUM(unsigned int, unsigned int, signed char const*) gpu/command_buffer/service/gles2_cmd_decoder.cc:13730:3 #9 0x7fc7d213e809 in gpu::gles2::GLES2DecoderImpl::HandleProduceTextureDirectCHROMIUMImmediate(unsigned int, void const*) gpu/command_buffer/service/gles2_cmd_decoder_autogen.h:4627:3 #10 0x7fc7d2173d3a in gpu::error::Error gpu::gles2::GLES2DecoderImpl::DoCommandsImpl(unsigned int, void const*, int, int*) gpu/command_buffer/service/gles2_cmd_decoder.cc:4603:18 #11 0x7fc7d2287ed0 in gpu::CommandParser::ProcessCommands(int) gpu/command_buffer/service/cmd_parser.cc:51:25 #12 0x7fc7d21d5c7e in gpu::GpuScheduler::PutChanged() gpu/command_buffer/service/gpu_scheduler.cc:60:13 #13 0x7fc7d2069ede in content::GpuCommandBufferStub::OnAsyncFlush(int, unsigned int, std::__1::vector > const&) content/common/gpu/gpu_command_buffer_stub.cc:841:3 #14 0x7fc7d2062685 in DispatchToMethodImpl > &), int, unsigned int, std::__1::vector > , 0, 1, 2> base/tuple.h:254:3 #15 0x7fc7d2062685 in DispatchToMethod > &), int, unsigned int, std::__1::vector > > base/tuple.h:261:0 #16 0x7fc7d2062685 in Dispatch > &)> content/common/gpu/gpu_messages.h:570:0 #17 0x7fc7d2062685 in content::GpuCommandBufferStub::OnMessageReceived(IPC::Message const&) content/common/gpu/gpu_command_buffer_stub.cc:304:0 #18 0x7fc7d2033387 in content::MessageRouter::RouteMessage(IPC::Message const&) content/common/message_router.cc:54:10 #19 0x7fc7d204ca7e in content::GpuChannel::HandleMessage() content/common/gpu/gpu_channel.cc:842:15 #20 0x7fc7c5f2b084 in Run base/callback.h:396:12 #21 0x7fc7c5f2b084 in base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask const&) base/debug/task_annotator.cc:51:0 #22 0x7fc7c5e40d3f in base::MessageLoop::RunTask(base::PendingTask const&) base/message_loop/message_loop.cc:481:3 #23 0x7fc7c5e421c4 in DeferOrRunPendingTask base/message_loop/message_loop.cc:490:5 #24 0x7fc7c5e421c4 in base::MessageLoop::DoWork() base/message_loop/message_loop.cc:602:0 #25 0x7fc7c5f26d46 in HandleDispatch base/message_loop/message_pump_glib.cc:267:7 #26 0x7fc7c5f26d46 in base::(anonymous namespace)::WorkSourceDispatch(_GSource*, int (*)(void*), void*) base/message_loop/message_pump_glib.cc:109:0 #27 0x7fc7c1acfe03 in g_main_context_dispatch ??:0:0 SUMMARY: AddressSanitizer: heap-use-after-free (/usr/local/google/home/markbrand/chromium/src/out/Release/chrome+0xf7cf706) Shadow bytes around the buggy address: 0x0c167fff9650: fd fd fd fd fd fd fd fa fa fa fa fa fa fa fa fa 0x0c167fff9660: fd fd fd fd fd fd fd fd fd fd fd fd fd fa fa fa 0x0c167fff9670: fa fa fa fa fa fa fd fd fd fd fd fd fd fd fd fd 0x0c167fff9680: fd fd fd fa fa fa fa fa fa fa fa fa 00 00 00 00 0x0c167fff9690: 00 00 00 00 00 00 00 00 00 fa fa fa fa fa fa fa =>0x0c167fff96a0: fa fa fd fd fd fd[fd]fd fd fd fd fd fd fd fd fa 0x0c167fff96b0: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd 0x0c167fff96c0: fd fd fd fd fd fa fa fa fa fa fa fa fa fa fd fd 0x0c167fff96d0: fd fd fd fd fd fd fd fd fd fd fd fa fa fa fa fa 0x0c167fff96e0: fa fa fa fa fd fd fd fd fd fd fd fd fd fd fd fd 0x0c167fff96f0: fd fa fa fa fa fa fa fa fa fa fd fd fd fd fd fd Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Heap right redzone: fb Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack partial redzone: f4 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==28553==ABORTING [24300:24300:0324/152140:ERROR:gpu_process_transport_factory.cc(640)] Lost UI shared context.