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

Issue 712015 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 710753
Owner:
Closed: Apr 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

Data race in sw::Renderer::terminateThreads

Project Member Reported by ClusterFuzz, Apr 16 2017

Issue description

Cc: msrchandra@chromium.org jbau...@chromium.org
Components: Internals>GPU>SwiftShader
Labels: Test-Predator-Correct-CLs M-58
Owner: capn@chromium.org
Status: Assigned (was: Untriaged)
Assigning to the concern owner from Predator results --
Regression information is not available. The result is the blame information. 

Author: John Bauman
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/894018228b0e0bdbd7aa7e8f47d4a9458789ca82
Time: Tue May 06 15:04:28 2014 -0400
The CL last changed line 1994 of file Renderer.cpp, which is stack frame 0. 

Author: John Bauman
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/894018228b0e0bdbd7aa7e8f47d4a9458789ca82
Time: Tue May 06 15:04:28 2014 -0400
The CL last changed line 182 of file Renderer.cpp, which is stack frame 1. 

Author: Nicolas Capens
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/0bac285a78df6a6d7a6b68784748b92805420ffb
Time: Sat May 07 06:09:58 2016 -0400
The CL last changed line 174 of file Device.cpp, which is stack frame 2. 

Author: Nicolas Capens
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/0bac285a78df6a6d7a6b68784748b92805420ffb
Time: Sat May 07 06:09:58 2016 -0400
The CL last changed line 151 of file Device.cpp, which is stack frame 3. 

Author: Nicolas Capens
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/0bac285a78df6a6d7a6b68784748b92805420ffb
Time: Sat May 07 06:09:58 2016 -0400
The CL last changed line 265 of file Context.cpp, which is stack frame 4. 

Author: Nicolas Capens
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/0bac285a78df6a6d7a6b68784748b92805420ffb
Time: Sat May 07 06:09:58 2016 -0400
The CL last changed line 188 of file Context.cpp, which is stack frame 5. 

Author: Nicolas Capens
Project: chromium-swiftshader
Changelist: https://swiftshader.googlesource.com/SwiftShader.git/+/c360363171c293e1cde328a592c9e0d7261c371c
Time: Sun Feb 07 22:19:45 2016 -0500
The CL last changed line 57 of file Object.cpp, which is stack frame 6.

@Nicolas Capens -- Could you please look into the issue, kindly re-assign if this is not related to your changes.
Thank You.

Comment 2 by capn@chromium.org, Apr 17 2017

Labels: -Pri-2 Pri-3
Mergedinto: 710753
Status: Duplicate (was: Assigned)
Also caused by weak memory ordering assumption in SwiftShader's custom exponential back-off mutex lock implementation.
Project Member

Comment 3 by ClusterFuzz, Aug 4 2017

ClusterFuzz has detected this issue as fixed in range 491692:491694.

Detailed report: https://clusterfuzz.com/testcase?key=6386688676069376

Fuzzer: inferno_twister
Job Type: linux_tsan_chrome_mp
Platform Id: linux

Crash Type: Data race WRITE 1
Crash Address: 0x7bb00000c709
Crash State:
  sw::Renderer::terminateThreads
  sw::Renderer::~Renderer
  es2::Device::~Device
  
Sanitizer: thread (TSAN)

Fixed: https://clusterfuzz.com/revisions?job=linux_tsan_chrome_mp&range=491692:491694

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=6386688676069376


See https://github.com/google/clusterfuzz-tools for more information.

If you suspect that the result above is incorrect, try re-doing that job on the test case report page.

Comment 4 by capn@chromium.org, Aug 4 2017

Apparently this was fixed by https://chromium-review.googlesource.com/599809

Sign in to add a comment