New issue
Advanced search Search tips

Issue 850182 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Check failed: false. HardwareDisplayPlaneManagerLegacy doesn't support per plane CTM

Project Member Reported by sky@chromium.org, Jun 6 2018

Issue description

This is on a pixel1.
ChromeOS version (installed using simple-chrome workflow):  R69-10756.0.0
Built chrome at Cr-Commit-Position: refs/heads/master@{#564946} commit dc92391591e74937ec7a46f3833e24bf378121e2

Here's the stack:
[14169:14176:0606/111129.202654:VERBOSE1:drm_display.cc(104)] DRM configuring: device=/sys/devices/pci0000:00/0000:00:02.0/drm/card0 crtc=19 connector=30 origin=0,0 size=0x0
[14169:14176:0606/111129.204667:FATAL:hardware_display_plane_manager_legacy.cc(137)] Check failed: false. HardwareDisplayPlaneManagerLegacy doesn't support per plane CTM
#0 0x7fbc5288991c base::debug::StackTrace::StackTrace()
#1 0x7fbc527fdac0 logging::LogMessage::~LogMessage()
#2 0x7fbc4fa40b2d ui::HardwareDisplayPlaneManagerLegacy::SetColorCorrectionOnAllCrtcPlanes()
#3 0x7fbc4fa3df13 ui::HardwareDisplayPlaneManager::SetColorMatrix()
#4 0x7fbc4fa1f61f ui::DrmDisplay::SetColorMatrix()
#5 0x7fbc4fa20f31 ui::DrmGpuDisplayManager::SetColorMatrix()
#6 0x7fbc527e6dee base::debug::TaskAnnotator::RunTask()
#7 0x7fbc528b2ae6 base::internal::IncomingTaskQueue::RunTask()
#8 0x7fbc52806406 base::MessageLoop::RunTask()
#9 0x7fbc52806817 base::MessageLoop::DeferOrRunPendingTask()
#10 0x7fbc52806a98 base::MessageLoop::DoWork()
#11 0x7fbc528a8269 base::MessagePumpLibevent::Run()
#12 0x7fbc52805d31 base::MessageLoop::Run()
#13 0x7fbc52831776 base::RunLoop::Run()
#14 0x7fbc5285c97a base::Thread::Run()
#15 0x7fbc5285ccce base::Thread::ThreadMain()
#16 0x7fbc5289ba8f base::(anonymous namespace)::ThreadFunc()
#17 0x7fbc4ec552b8 <unknown>
#18 0x7fbc4e106fad clone

dcastagna@chromium.org added the NOTREACHED, so perhaps he can suggest what should happen here.

 
Cc: dcasta...@chromium.org
Owner: dnicoara@chromium.org
It's likely we mixed up something during the HardwareDisplayPlaneManager refactor.

Comment 2 by sky@chromium.org, Jun 6 2018

I tried removing the NOTREACHED and things seem to work.
It won't crash, but it won't work as expected either, since something is trying to set a color correction matrix, and we're not setting it.
I'm thinking that DisplayColorManager::ResetDisplayColorCalibration() (or one of the other color calibration calls) is causing this. I see that of the DisplayColorManager calls to set color correction checks if the display has color correction matrix, but not all of them.
I was able to reproduce it. My setup is a bit different since I don't have a link device.

I've tested on Samus. By default I don't see the NOTREACHED() triggered. If I set an ICC file then it triggers the NOTREACHED(). The origin of the call is:

DisplayColorManager::UpdateCalibrationData() which calls DisplayColorManager::ApplyDisplayColorCalibration() which eventually calls into Ozone to set it, triggering the NOTREACHED().

I'll try and see if I can update all the call sites to check for color correction support on the displays.
Cc: afakhry@chromium.org
Status: Started (was: Untriaged)
WIP CL uploaded: https://chromium-review.googlesource.com/#/c/chromium/src/+/1089858
Project Member

Comment 7 by bugdroid1@chromium.org, Jun 7 2018

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

commit 0635a5ef1c7493c7ec3477587978c05a03af982a
Author: Daniel Nicoara <dnicoara@chromium.org>
Date: Thu Jun 07 20:26:01 2018

Don't try to configure display color correction if not supported

Check that the display supports color correction before trying to apply
it to the hardware.

BUG= 850182 
TEST=Ran on device and verified NOTREACHED in
HardwareDisplayPlaneManagerLegacy isn't triggered.

Change-Id: I086e718e7ebfa8bbaf0286dac411ffee45a743ef
Reviewed-on: https://chromium-review.googlesource.com/1089858
Reviewed-by: Ahmed Fakhry <afakhry@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Commit-Queue: Daniel Nicoara <dnicoara@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565389}
[modify] https://crrev.com/0635a5ef1c7493c7ec3477587978c05a03af982a/ash/display/display_color_manager.cc
[modify] https://crrev.com/0635a5ef1c7493c7ec3477587978c05a03af982a/ash/display/display_color_manager_unittest.cc

Status: Fixed (was: Started)

Sign in to add a comment