New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 778254 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug



Sign in to add a comment

Data race in Renderer

Project Member Reported by phoglund@chromium.org, Oct 25 2017

Issue description

Chrome Version: (copy from chrome://version)
OS: (e.g. Win7, OSX 10.9.5, etc...)

What steps will reproduce the problem?
(1) Apply this patch (adds a new test): https://chromium-review.googlesource.com/c/chromium/src/+/735347
(2) gn gen out/tsan, gn args out/tsan and set args from TSAN wiki page
(3) ninja -C out/tsan content_browsertests
(4) out/tsan/content_browsertests --gtest_filter="*Survives10SecondsWith10PeerConnectionPausePlaying"

What is the expected result?
Passes

What happens instead?
WARNING: ThreadSanitizer: data race (pid=15398)
  Write of size 4 at 0x7fc9b855c050 by main thread:
    #0 sw::Renderer::updateConfiguration(bool) third_party/swiftshader/src/Renderer/Renderer.cpp (libGLESv2.so+0x183d6e)
    #1 sw::Renderer::Renderer(sw::Context*, sw::Conventions, bool) third_party/swiftshader/src/Renderer/Renderer.cpp:173:3 (libGLESv2.so+0x183b41)
    #2 es2::Device::Device(sw::Context*) third_party/swiftshader/src/OpenGL/libGLESv2/Device.cpp:36:37 (libGLESv2.so+0xc19c9)
    #3 es2::Context::Context(egl::Display*, es2::Context const*, int, egl::Config const*) third_party/swiftshader/src/OpenGL/libGLESv2/Context.cpp:52:15 (libGLESv2.so+0xb1777)
    #4 es2CreateContext(egl::Display*, egl::Context const*, int, egl::Config const*) third_party/swiftshader/src/OpenGL/libGLESv2/Context.cpp:4416:13 (libGLESv2.so+0xbcf3a)
    #5 egl::Display::createContext(void*, egl::Context const*, int) third_party/swiftshader/src/OpenGL/libEGL/Display.cpp:463:14 (libEGL.so+0x9db0)
    #6 egl::CreateContext(void*, void*, void*, int const*) third_party/swiftshader/src/OpenGL/libEGL/libEGL.cpp:744:18 (libEGL.so+0xdb6f)
    #7 eglCreateContext third_party/swiftshader/src/OpenGL/libEGL/main.cpp:468:9 (libEGL.so+0xef78)
    #8 gl::EGLApiBase::eglCreateContextFn(void*, void*, void*, int const*) ui/gl/gl_bindings_autogen_egl.cc:405:10 (content_browsertests+0x4ec7a1a)
    #9 gl::GLContextEGL::Initialize(gl::GLSurface*, gl::GLContextAttribs const&) ui/gl/gl_context_egl.cc:188:14 (content_browsertests+0x4ec57ec)
    #10 gl::InitializeGLContext(scoped_refptr<gl::GLContext>, gl::GLSurface*, gl::GLContextAttribs const&) ui/gl/gl_context.cc:407:17 (content_browsertests+0x4e39e58)
    #11 gl::init::CreateGLContext(gl::GLShareGroup*, gl::GLSurface*, gl::GLContextAttribs const&) ui/gl/init/gl_factory_x11.cc:62:14 (content_browsertests+0x67c85c0)
    #12 gpu::GpuCommandBufferStub::Initialize(gpu::GpuCommandBufferStub*, GPUCreateCommandBufferConfig const&, std::__1::unique_ptr<base::SharedMemory, std::__1::default_delete<base::SharedMemory> >) gpu/ipc/service/gpu_command_buffer_stub.cc:773:15 (content_browsertests+0x6f46a81)
    #13 gpu::GpuChannel::OnCreateCommandBuffer(GPUCreateCommandBufferConfig const&, int, base::SharedMemoryHandle, gpu::ContextResult*, gpu::Capabilities*) gpu/ipc/service/gpu_channel.cc:1145:13 (content_browsertests+0x6f32643)
    #14 DispatchToMethodImpl<gpu::GpuChannel *, void (gpu::GpuChannel::*)(const GPUCreateCommandBufferConfig &, int, base::SharedMemoryHandle, gpu::ContextResult *, gpu::Capabilities *), std::__1::tuple<GPUCreateCommandBufferConfig, int, base::SharedMemoryHandle>, std::__1::tuple<gpu::ContextResult, gpu::Capabilities>, 0, 1, 2, 0, 1> base/tuple.h:94:3 (content_browsertests+0x6f31a07)
    #15 DispatchToMethod<gpu::GpuChannel *, void (gpu::GpuChannel::*)(const GPUCreateCommandBufferConfig &, int, base::SharedMemoryHandle, gpu::ContextResult *, gpu::Capabilities *), std::__1::tuple<GPUCreateCommandBufferConfig, int, base::SharedMemoryHandle>, std::__1::tuple<gpu::ContextResult, gpu::Capabilities> > base/tuple.h:105 (content_browsertests+0x6f31a07)
    #16 bool IPC::MessageT<GpuChannelMsg_CreateCommandBuffer_Meta, std::__1::tuple<GPUCreateCommandBufferConfig, int, base::SharedMemoryHandle>, std::__1::tuple<gpu::ContextResult, gpu::Capabilities> >::Dispatch<gpu::GpuChannel, gpu::GpuChannel, void, void (gpu::GpuChannel::*)(GPUCreateCommandBufferConfig const&, int, base::SharedMemoryHandle, gpu::ContextResult*, gpu::Capabilities*)>(IPC::Message const*, gpu::GpuChannel*, gpu::GpuChannel*, void*, void (gpu::GpuChannel::*)(GPUCreateCommandBufferConfig const&, int, base::SharedMemoryHandle, gpu::ContextResult*, gpu::Capabilities*)) ipc/ipc_message_templates.h:204 (content_browsertests+0x6f31a07)
    #17 gpu::GpuChannel::OnControlMessageReceived(IPC::Message const&) gpu/ipc/service/gpu_channel.cc:965:5 (content_browsertests+0x6f31823)
    #18 gpu::GpuChannel::HandleMessageHelper(IPC::Message const&) gpu/ipc/service/gpu_channel.cc:1035:15 (content_browsertests+0x6f3942c)
    #19 gpu::GpuChannel::HandleOutOfOrderMessage(IPC::Message const&) gpu/ipc/service/gpu_channel.cc:1052:3 (content_browsertests+0x6f2fbb0)
    #20 Invoke<const base::WeakPtr<gpu::GpuChannel> &, const IPC::Message &> base/bind_internal.h:194:12 (content_browsertests+0x6f3beaa)
    #21 MakeItSo<void (gpu::GpuChannel::*const &)(const IPC::Message &), const base::WeakPtr<gpu::GpuChannel> &, const IPC::Message &> base/bind_internal.h:297 (content_browsertests+0x6f3beaa)
    #22 RunImpl<void (gpu::GpuChannel::*const &)(const IPC::Message &), const std::__1::tuple<base::WeakPtr<gpu::GpuChannel>, IPC::Message> &, 0, 1> base/bind_internal.h:349 (content_browsertests+0x6f3beaa)
    #23 base::internal::Invoker<base::internal::BindState<void (gpu::GpuChannel::*)(IPC::Message const&), base::WeakPtr<gpu::GpuChannel>, IPC::Message>, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:331 (content_browsertests+0x6f3beaa)
    #24 Run base/callback.h:64:12 (content_browsertests+0x503659e)
    #25 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:57 (content_browsertests+0x503659e)
    #26 base::internal::IncomingTaskQueue::RunTask(base::PendingTask*) base/message_loop/incoming_task_queue.cc:130:19 (content_browsertests+0x507813e)
    #27 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:392:25 (content_browsertests+0x5075458)
    #28 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:404:5 (content_browsertests+0x50758e2)
    #29 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:450:16 (content_browsertests+0x5075c99)
    #30 base::MessagePumpGlib::Run(base::MessagePump::Delegate*) base/message_loop/message_pump_glib.cc:313:49 (content_browsertests+0x507bd8b)
    #31 base::MessageLoop::Run() base/message_loop/message_loop.cc:344:10 (content_browsertests+0x5074ae2)
    #32 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x5074b8d)
    #33 base::RunLoop::Run() base/run_loop.cc:118:14 (content_browsertests+0x50b95c9)
    #34 content::GpuMain(content::MainFunctionParams const&) content/gpu/gpu_main.cc:334:21 (content_browsertests+0x9ca7189)
    #35 content::RunNamedProcessTypeMain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&, content::ContentMainDelegate*) content/app/content_main_runner.cc:429:14 (content_browsertests+0x3dbde5b)
    #36 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:707:12 (content_browsertests+0x3dbecd0)
    #37 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() content/app/content_service_manager_main_delegate.cc:51:32 (content_browsertests+0x2c4505f)
    #38 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:456:29 (content_browsertests+0x708df4a)
    #39 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0x2c4580b)
    #40 content::LaunchTests(content::TestLauncherDelegate*, unsigned long, int, char**) content/public/test/test_launcher.cc:577:12 (content_browsertests+0x4a9570b)
    #41 main content/test/content_test_launcher.cc:136:10 (content_browsertests+0x4a620bf)
  Previous read of size 4 at 0x7fc9b855c050 by thread T16 (mutexes: write M283018347438755312):
    #0 sw::Renderer::scheduleTask(int) third_party/swiftshader/src/Renderer/Renderer.cpp:820:19 (libGLESv2.so+0x18778e)
    #1 sw::Renderer::taskLoop(int) third_party/swiftshader/src/Renderer/Renderer.cpp:725:4 (libGLESv2.so+0x1876e7)
    #2 sw::Renderer::threadLoop(int) third_party/swiftshader/src/Renderer/Renderer.cpp:714:4 (libGLESv2.so+0x1875ed)
    #3 sw::Renderer::threadFunction(void*) third_party/swiftshader/src/Renderer/Renderer.cpp:707:13 (libGLESv2.so+0x187570)
    #4 sw::Thread::startFunction(void*) third_party/swiftshader/src/Common/Thread.cpp:66:4 (libGLESv2.so+0x335934)
  Location is global 'sw::threadCount' of size 4 at 0x7fc9b855c050 (libGLESv2.so+0x000000337050)
  Mutex M283018347438755312 is already destroyed.
  Thread T16 (tid=15436, running) created by main thread at:
    #0 pthread_create <null> (content_browsertests+0x1991a13)
    #1 sw::Thread::Thread(void (*)(void*), void*) third_party/swiftshader/src/Common/Thread.cpp:27:4 (libGLESv2.so+0x33583d)
    #2 sw::Renderer::initializeThreads() third_party/swiftshader/src/Renderer/Renderer.cpp:2003:20 (libGLESv2.so+0x18a2d7)
    #3 sw::Renderer::updateConfiguration(bool) third_party/swiftshader/src/Renderer/Renderer.cpp:2791:4 (libGLESv2.so+0x183e4a)
    #4 sw::Renderer::draw(sw::DrawType, unsigned int, unsigned int, bool) third_party/swiftshader/src/Renderer/Renderer.cpp:222:3 (libGLESv2.so+0x184353)
    #5 es2::Device::drawIndexedPrimitive(sw::DrawType, unsigned int, unsigned int) third_party/swiftshader/src/OpenGL/libGLESv2/Device.cpp:326:3 (libGLESv2.so+0xc2869)
    #6 es2::Context::drawElements(unsigned int, unsigned int, unsigned int, int, unsigned int, void const*, int) third_party/swiftshader/src/OpenGL/libGLESv2/Context.cpp:3534:12 (libGLESv2.so+0xbb969)
    #7 es2::DrawElements(unsigned int, int, unsigned int, void const*) third_party/swiftshader/src/OpenGL/libGLESv2/libGLESv2.cpp:1616:12 (libGLESv2.so+0xe2d80)
    #8 glDrawElements third_party/swiftshader/src/OpenGL/libGLESv2/main.cpp:607:9 (libGLESv2.so+0xf18c8)
    #9 gl::GLApiBase::glDrawElementsFn(unsigned int, int, unsigned int, void const*) ui/gl/gl_bindings_autogen_gl.cc:3161:3 (content_browsertests+0x4e44b20)
    #10 gl::RealGLApi::glDrawElementsFn(unsigned int, int, unsigned int, void const*) ui/gl/gl_gl_api_implementation.cc:474:16 (content_browsertests+0x4ea03ee)
    #11 gpu::gles2::GLES2DecoderImpl::DoDrawElements(char const*, bool, unsigned int, int, unsigned int, int, int) gpu/command_buffer/service/gles2_cmd_decoder.cc:10628:16 (content_browsertests+0x69d52dc)
    #12 gpu::gles2::GLES2DecoderImpl::HandleDrawElements(unsigned int, void const volatile*) gpu/command_buffer/service/gles2_cmd_decoder.cc:10665:10 (content_browsertests+0x6972b1c)
    #13 gpu::error::Error gpu::gles2::GLES2DecoderImpl::DoCommandsImpl<false>(unsigned int, void const volatile*, int, int*) gpu/command_buffer/service/gles2_cmd_decoder.cc:5430:18 (content_browsertests+0x69b99c6)
    #14 gpu::gles2::GLES2DecoderImpl::DoCommands(unsigned int, void const volatile*, int, int*) gpu/command_buffer/service/gles2_cmd_decoder.cc:5481:12 (content_browsertests+0x69b8d94)
    #15 gpu::CommandBufferService::Flush(int, gpu::AsyncAPIInterface*) gpu/command_buffer/service/command_buffer_service.cc:90:18 (content_browsertests+0x6801a53)
    #16 gpu::GpuCommandBufferStub::OnAsyncFlush(int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > const&) gpu/ipc/service/gpu_command_buffer_stub.cc:1009:20 (content_browsertests+0x6f411e5)
    #17 DispatchToMethodImpl<gpu::GpuCommandBufferStub *, void (gpu::GpuCommandBufferStub::*)(int, unsigned int, const std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > &), std::__1::tuple<int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > >, 0, 1, 2> base/tuple.h:52:3 (content_browsertests+0x6f40e90)
    #18 DispatchToMethod<gpu::GpuCommandBufferStub *, void (gpu::GpuCommandBufferStub::*)(int, unsigned int, const std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > &), std::__1::tuple<int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > > > base/tuple.h:60 (content_browsertests+0x6f40e90)
    #19 DispatchToMethod<gpu::GpuCommandBufferStub, void (gpu::GpuCommandBufferStub::*)(int, unsigned int, const std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > &), void, std::__1::tuple<int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > > > ipc/ipc_message_templates.h:51 (content_browsertests+0x6f40e90)
    #20 bool IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta, std::__1::tuple<int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > >, void>::Dispatch<gpu::GpuCommandBufferStub, gpu::GpuCommandBufferStub, void, void (gpu::GpuCommandBufferStub::*)(int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > const&)>(IPC::Message const*, gpu::GpuCommandBufferStub*, gpu::GpuCommandBufferStub*, void*, void (gpu::GpuCommandBufferStub::*)(int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > const&)) ipc/ipc_message_templates.h:146 (content_browsertests+0x6f40e90)
    #21 gpu::GpuCommandBufferStub::OnMessageReceived(IPC::Message const&) gpu/ipc/service/gpu_command_buffer_stub.cc:290:5 (content_browsertests+0x6f3ef90)
    #22 IPC::MessageRouter::RouteMessage(IPC::Message const&) ipc/message_router.cc:56:20 (content_browsertests+0x6f3db2b)
    #23 gpu::GpuChannel::HandleMessageHelper(IPC::Message const&) gpu/ipc/service/gpu_channel.cc:1037:23 (content_browsertests+0x6f39444)
    #24 gpu::GpuChannel::HandleMessage(IPC::Message const&) gpu/ipc/service/gpu_channel.cc:985:3 (content_browsertests+0x6f2f91b)
    #25 Invoke<base::WeakPtr<gpu::GpuChannel>, IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta> > base/bind_internal.h:194:12 (content_browsertests+0x6f3b8e9)
    #26 MakeItSo<void (gpu::GpuChannel::*)(const IPC::Message &), base::WeakPtr<gpu::GpuChannel>, IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta> > base/bind_internal.h:297 (content_browsertests+0x6f3b8e9)
    #27 RunImpl<void (gpu::GpuChannel::*)(const IPC::Message &), std::__1::tuple<base::WeakPtr<gpu::GpuChannel>, IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta> >, 0, 1> base/bind_internal.h:349 (content_browsertests+0x6f3b8e9)
    #28 base::internal::Invoker<base::internal::BindState<void (gpu::GpuChannel::*)(IPC::Message const&), base::WeakPtr<gpu::GpuChannel>, IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta, std::__1::tuple<int, unsigned int, std::__1::vector<ui::LatencyInfo, std::__1::allocator<ui::LatencyInfo> > >, void> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:318 (content_browsertests+0x6f3b8e9)
    #29 Run base/callback.h:64:12 (content_browsertests+0x6f511fd)
    #30 gpu::Scheduler::RunNextTask() gpu/command_buffer/service/scheduler.cc:546 (content_browsertests+0x6f511fd)
    #31 Invoke<const base::WeakPtr<gpu::Scheduler> &> base/bind_internal.h:194:12 (content_browsertests+0x6f541e2)
    #32 MakeItSo<void (gpu::Scheduler::*const &)(), const base::WeakPtr<gpu::Scheduler> &> base/bind_internal.h:297 (content_browsertests+0x6f541e2)
    #33 RunImpl<void (gpu::Scheduler::*const &)(), const std::__1::tuple<base::WeakPtr<gpu::Scheduler> > &, 0> base/bind_internal.h:349 (content_browsertests+0x6f541e2)
    #34 base::internal::Invoker<base::internal::BindState<void (gpu::Scheduler::*)(), base::WeakPtr<gpu::Scheduler> >, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:331 (content_browsertests+0x6f541e2)
    #35 Run base/callback.h:64:12 (content_browsertests+0x503659e)
    #36 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:57 (content_browsertests+0x503659e)
    #37 base::internal::IncomingTaskQueue::RunTask(base::PendingTask*) base/message_loop/incoming_task_queue.cc:130:19 (content_browsertests+0x507813e)
    #38 base::MessageLoop::RunTask(base::PendingTask*) base/message_loop/message_loop.cc:392:25 (content_browsertests+0x5075458)
    #39 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) base/message_loop/message_loop.cc:404:5 (content_browsertests+0x50758e2)
    #40 base::MessageLoop::DoWork() base/message_loop/message_loop.cc:450:16 (content_browsertests+0x5075c99)
    #41 HandleDispatch base/message_loop/message_pump_glib.cc:267:25 (content_browsertests+0x507c217)
    #42 base::(anonymous namespace)::WorkSourceDispatch(_GSource*, int (*)(void*), void*) base/message_loop/message_pump_glib.cc:109 (content_browsertests+0x507c217)
    #43 g_main_context_dispatch <null> (libglib-2.0.so.0+0x48e03)
    #44 base::MessageLoop::Run() base/message_loop/message_loop.cc:344:10 (content_browsertests+0x5074ae2)
    #45 non-virtual thunk to base::MessageLoop::Run() base/message_loop/message_loop.cc (content_browsertests+0x5074b8d)
    #46 base::RunLoop::Run() base/run_loop.cc:118:14 (content_browsertests+0x50b95c9)
    #47 content::GpuMain(content::MainFunctionParams const&) content/gpu/gpu_main.cc:334:21 (content_browsertests+0x9ca7189)
    #48 content::RunNamedProcessTypeMain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams const&, content::ContentMainDelegate*) content/app/content_main_runner.cc:429:14 (content_browsertests+0x3dbde5b)
    #49 content::ContentMainRunnerImpl::Run() content/app/content_main_runner.cc:707:12 (content_browsertests+0x3dbecd0)
    #50 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() content/app/content_service_manager_main_delegate.cc:51:32 (content_browsertests+0x2c4505f)
    #51 service_manager::Main(service_manager::MainParams const&) services/service_manager/embedder/main.cc:456:29 (content_browsertests+0x708df4a)
    #52 content::ContentMain(content::ContentMainParams const&) content/app/content_main.cc:19:10 (content_browsertests+0x2c4580b)
    #53 content::LaunchTests(content::TestLauncherDelegate*, unsigned long, int, char**) content/public/test/test_launcher.cc:577:12 (content_browsertests+0x4a9570b)
    #54 main content/test/content_test_launcher.cc:136:10 (content_browsertests+0x4a620bf)
SUMMARY: ThreadSanitizer: data race third_party/swiftshader/src/Renderer/Renderer.cpp in sw::Renderer::updateConfiguration(bool)

Please use labels and text to provide additional information.


For graphics-related bugs, please copy/paste the contents of the about:gpu
page at the end of this report.

 
Cc: nicolasc...@google.com sugoi@google.com
CC third_party/swiftshader OWNERS
I will submit a suppression for this when I land my new test in https://chromium-review.googlesource.com/c/chromium/src/+/735347.

Comment 3 by capn@chromium.org, Oct 26 2017

Owner: sugoi@chromium.org
Status: Started (was: Untriaged)
Please don't suppress it. I think this is a duplicate of  Issue 776621 . We have a fix in the works.
Project Member

Comment 4 by bugdroid1@chromium.org, Oct 26 2017

The following revision refers to this bug:
  https://swiftshader.googlesource.com/SwiftShader.git/+/f2520e1905f76f3397720ceef2a4dd60b0f2ec70

commit f2520e1905f76f3397720ceef2a4dd60b0f2ec70
Author: Alexis Hetu <sugoi@google.com>
Date: Thu Oct 26 19:00:42 2017

Data race fix

There's a data race involving threadCount,
so it is now an AtomicInt object.

Also removed unused extern variables.

 Bug chromium:778254   chromium:776621 

Change-Id: I93174e8f4e5e48f26414ba9c81bb9a2c317dbf73
Reviewed-on: https://swiftshader-review.googlesource.com/13290
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>

[modify] https://crrev.com/f2520e1905f76f3397720ceef2a4dd60b0f2ec70/src/Renderer/Renderer.cpp
[modify] https://crrev.com/f2520e1905f76f3397720ceef2a4dd60b0f2ec70/src/Renderer/Renderer.hpp

Nice!

Ok, the suppression already landed but I can send you a CL to undo it.
Project Member

Comment 6 by bugdroid1@chromium.org, Oct 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7e813690449fb7265efb50b410dc271e5f63cf05

commit 7e813690449fb7265efb50b410dc271e5f63cf05
Author: Alexis Hetu <sugoi@google.com>
Date: Fri Oct 27 19:22:05 2017

Roll SwiftShader ec5da19..6e27fea

https://swiftshader.googlesource.com/SwiftShader.git/+log/ec5da19..6e27fea

BUG= chromium:778254   chromium:776621   chromium:775957 

TBR=kbr@chromium.org

TEST=bots

CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel,linux_chromium_cfi_rel_ng;master.tryserver.chromium.android:android_optional_gpu_tests_rel

Change-Id: I77c9aa6852f23337dc3358ece917299a6e3f1db3
Reviewed-on: https://chromium-review.googlesource.com/741920
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#512264}
[modify] https://crrev.com/7e813690449fb7265efb50b410dc271e5f63cf05/DEPS

Project Member

Comment 7 by bugdroid1@chromium.org, Oct 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4286b558fc28be32d592852f619c379da42fbe21

commit 4286b558fc28be32d592852f619c379da42fbe21
Author: Patrik Höglund <phoglund@chromium.org>
Date: Mon Oct 30 18:37:11 2017

Revert suppression.

R=sugoi@chromium.org

Bug:  778254 
Change-Id: Ib201e3fbc4adf7749b1be5a6fe9ebaf86691a94e
Reviewed-on: https://chromium-review.googlesource.com/741747
Reviewed-by: Alexis Hétu <sugoi@chromium.org>
Commit-Queue: Alexis Hétu <sugoi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#512539}
[modify] https://crrev.com/4286b558fc28be32d592852f619c379da42fbe21/build/sanitizers/tsan_suppressions.cc

Comment 8 by sugoi@chromium.org, Oct 31 2017

Cc: phoglund@chromium.org
Status: Fixed (was: Started)
I'm assuming this is fixed now. Please reopen if this is not fixed.

Sign in to add a comment