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

Issue 896945 link

Starred by 10 users

Issue metadata

Status: Assigned
Owner:
Last visit 20 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

CHECK() failed in ui::HardwareDisplayController::SchedulePageFlip() in Youtube

Project Member Reported by dongseon...@intel.com, Oct 19

Issue description

This regression happens between

commit c16e7e464ad15925ee652fffd9eed8f6c355b1be
Author: Dmitry Gozman <dgozman@chromium.org>
Date:   Wed Oct 17 00:52:25 2018 +0000

and

commit b430c9d0c83a00fef1ecdefd8c0d83f935c68b24
Author: Tom Finegan <tomfinegan@google.com>
Date:   Thu Oct 18 00:59:19 2018 +0000


After regression, Youtube hardware overlay is broken with following error logs. Users cannot watch Youtube. I'm testing it on octopus.


[3518:3518:1018/170622.848220:ERROR:gpu_interface_provider.cc(87)] Not implemented reached in virtual void content::GpuInterfaceProvider::RegisterOzoneGpuInterfaces(service_manager::BinderRegistry *)
[3518:3540:1018/170622.926980:ERROR:service_manager_connection_impl.cc(318)] Can't create service multidevice_setup. No handler found.
[3561:3573:1018/170628.924107:ERROR:hardware_display_plane_manager_atomic.cc(134)] Failed to commit properties for page flip.: No space left on device (28)
[3561:3573:1018/170628.924211:FATAL:hardware_display_controller.cc(121)] Check failed: status. SchedulePageFlip failed
#0 0x59883e3f038f base::debug::StackTrace::StackTrace()
#1 0x59883e36fd70 logging::LogMessage::~LogMessage()
#2 0x59883c26d566 ui::HardwareDisplayController::SchedulePageFlip()
#3 0x59883c2682e4 ui::DrmWindow::SchedulePageFlip()
#4 0x59883c25f94b ui::DrmThread::OnPlanesReadyForPageFlip()
#5 0x59883c260c97 _ZN4base8internal13FunctorTraitsIMN2ui9DrmThreadEFviNS_12OnceCallbackIFvN3gfx10SwapResultENSt3__110unique_ptrINS5_8GpuFenceENS7_14default_deleteIS9_EEEEEEENS4_IFvRKNS5_20PresentationFeedbackEEEENS7_6vectorINS2_15DrmOverlayPlaneENS7_9allocatorISL_EEEEEvE6InvokeISQ_NS_7WeakPtrIS3_EEJiSE_SJ_SO_EEEvT_OT0_DpOT1_
#6 0x59883c260bd7 _ZN4base8internal7InvokerINS0_9BindStateIMN2ui9DrmThreadEFviNS_12OnceCallbackIFvN3gfx10SwapResultENSt3__110unique_ptrINS6_8GpuFenceENS8_14default_deleteISA_EEEEEEENS5_IFvRKNS6_20PresentationFeedbackEEEENS8_6vectorINS3_15DrmOverlayPlaneENS8_9allocatorISM_EEEEEJNS_7WeakPtrIS4_EEiSF_SK_EEEFvSP_EE7RunOnceEPNS0_13BindStateBaseEOSP_
#7 0x59883c2749d1 _ZN4base8internal7InvokerINS0_9BindStateINS_12OnceCallbackIFvNSt3__16vectorIN2ui15DrmOverlayPlaneENS4_9allocatorIS7_EEEEEEEJSA_EEEFvvEE7RunOnceEPNS0_13BindStateBaseE
#8 0x59883e406d91 base::debug::TaskAnnotator::RunTask()
#9 0x59883e37590f base::MessageLoop::RunTask()
#10 0x59883e375cb2 base::MessageLoop::DoWork()
#11 0x59883e403999 base::MessagePumpLibevent::Run()
#12 0x59883e395e45 base::RunLoop::Run()
#13 0x59883e3ca643 base::Thread::ThreadMain()
#14 0x59883e3fdb4d base::(anonymous namespace)::ThreadFunc()
#15 0x7f1d6b61a2b8 <unknown>
#16 0x7f1d6aadbfad clone

Received signal 6
#0 0x59883e3f038f base::debug::StackTrace::StackTrace()
#1 0x59883e3eff01 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#2 0x7f1d6b6242e0 <unknown>
#3 0x7f1d6aa18dd2 gsignal
#4 0x7f1d6aa1abf6 abort
#5 0x59883e3eecf5 base::debug::BreakDebugger()
#6 0x59883e3701f1 logging::LogMessage::~LogMessage()
#7 0x59883c26d566 ui::HardwareDisplayController::SchedulePageFlip()
#8 0x59883c2682e4 ui::DrmWindow::SchedulePageFlip()
#9 0x59883c25f94b ui::DrmThread::OnPlanesReadyForPageFlip()
#10 0x59883c260c97 _ZN4base8internal13FunctorTraitsIMN2ui9DrmThreadEFviNS_12OnceCallbackIFvN3gfx10SwapResultENSt3__110unique_ptrINS5_8GpuFenceENS7_14default_deleteIS9_EEEEEEENS4_IFvRKNS5_20PresentationFeedbackEEEENS7_6vectorINS2_15DrmOverlayPlaneENS7_9allocatorISL_EEEEEvE6InvokeISQ_NS_7WeakPtrIS3_EEJiSE_SJ_SO_EEEvT_OT0_DpOT1_
#11 0x59883c260bd7 _ZN4base8internal7InvokerINS0_9BindStateIMN2ui9DrmThreadEFviNS_12OnceCallbackIFvN3gfx10SwapResultENSt3__110unique_ptrINS6_8GpuFenceENS8_14default_deleteISA_EEEEEEENS5_IFvRKNS6_20PresentationFeedbackEEEENS8_6vectorINS3_15DrmOverlayPlaneENS8_9allocatorISM_EEEEEJNS_7WeakPtrIS4_EEiSF_SK_EEEFvSP_EE7RunOnceEPNS0_13BindStateBaseEOSP_
#12 0x59883c2749d1 _ZN4base8internal7InvokerINS0_9BindStateINS_12OnceCallbackIFvNSt3__16vectorIN2ui15DrmOverlayPlaneENS4_9allocatorIS7_EEEEEEEJSA_EEEFvvEE7RunOnceEPNS0_13BindStateBaseE
#13 0x59883e406d91 base::debug::TaskAnnotator::RunTask()
#14 0x59883e37590f base::MessageLoop::RunTask()
#15 0x59883e375cb2 base::MessageLoop::DoWork()
#16 0x59883e403999 base::MessagePumpLibevent::Run()
#17 0x59883e395e45 base::RunLoop::Run()
#18 0x59883e3ca643 base::Thread::ThreadMain()
#19 0x59883e3fdb4d base::(anonymous namespace)::ThreadFunc()
#20 0x7f1d6b61a2b8 <unknown>
#21 0x7f1d6aadbfad clone
  r8: 00007f1d6ad8b8e0  r9: 00007f1d67f75700 r10: 0000000000000008 r11: 0000000000000202
 r12: 00007f1d67f74698 r13: 0000000000000076 r14: 00007f1d67f746a0 r15: 00007f1d67f746a8
  di: 0000000000000de9  si: 0000000000000df5  bp: 00007f1d67f73c80  bx: 00007f1d67f73e20
  dx: 0000000000000006  ax: 0000000000000000  cx: 00007f1d6aa18dd2  sp: 00007f1d67f73b58
  ip: 00007f1d6aa18dd2 efl: 0000000000000202 cgf: 002b000000000033 erf: 0000000000000000
 trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.
device-enumerator: scan all dirs
  device-enumerator: scanning /sys/bus
  device-enumerator: scanning /sys/class
[1:14:1018/170630.821855:ERROR:render_media_log.cc(30)] MediaEvent: MEDIA_ERROR_LOG_ENTRY {"error":"video decode error"}
[1:1:1018/170630.839765:ERROR:render_media_log.cc(30)] MediaEvent: PIPELINE_ERROR PIPELINE_ERROR_DECODE
[3686:3686:1018/170630.916607:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.917400:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.920187:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.920505:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.923517:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.923852:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.924043:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.924208:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.924260:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.924303:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.924365:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.924415:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.926453:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.934670:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.934825:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.934915:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.934958:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.939091:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name
[3686:3686:1018/170630.939225:ERROR:gles2_cmd_decoder.cc(10223)] [.BrowserCompositor-0x359c15507000]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering.
[3686:3686:1018/170630.939305:ERROR:gles2_cmd_decoder.cc(17615)] [.BrowserCompositor-0x359c15507000]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name


 
Cc: hoegsberg@chromium.org mcasas@chromium.org
Components: Internals>GPU
Owner: dongseon...@intel.com
I submit the fix. https://chromium-review.googlesource.com/c/chromium/src/+/1291590
dcastagna, hoegsberg, could you review?
Cc: dongseon...@intel.com
Owner: rjkroege@chromium.org
Status: Assigned (was: Untriaged)
rjkroege@ this looks like something you'd be familiar with.
Owner: hoegsberg@chromium.org
Dongseong already submitted the right fix. We're landing it now, I don't think we need to bother rjkroege@.
Issue 896423 has been merged into this issue.
Project Member

Comment 7 by bugdroid1@chromium.org, Oct 20

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

commit 4bf9d01dbf34f17c899095a937dabbb884ec87fe
Author: Dongseong Hwang <dongseong.hwang@intel.com>
Date: Sat Oct 20 02:26:49 2018

viz: Fix wrong uv_rect calculation

CL:1045256 calculates |uv_rect| of the primary plane in wrong way. It causes
drmModeAtomicAddProperty failure. This CL fixes it.

BUG=896945

Change-Id: I6e914707cb961e8294e8ddd160b75e48ae5a2b64
Reviewed-on: https://chromium-review.googlesource.com/c/1291590
Commit-Queue: Dongseong Hwang <dongseong.hwang@intel.com>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
Cr-Commit-Position: refs/heads/master@{#601392}
[modify] https://crrev.com/4bf9d01dbf34f17c899095a937dabbb884ec87fe/components/viz/service/display/overlay_processor.cc
[modify] https://crrev.com/4bf9d01dbf34f17c899095a937dabbb884ec87fe/components/viz/service/display/overlay_unittest.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Oct 25

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

commit f8dfbe74c1f5c79051461cdf448abf7f8188336f
Author: Dongseong Hwang <dongseong.hwang@intel.com>
Date: Thu Oct 25 00:58:37 2018

viz: add unittests for CL:1291590

BUG=896945
TEST=SingleOverlayOnTopTest.AllowVideoNormalTransformWithOutputSurfaceOverlay

Change-Id: Iaa46909657f3e11f1d982f94aaff102676a74b4a
Reviewed-on: https://chromium-review.googlesource.com/c/1292822
Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
Cr-Commit-Position: refs/heads/master@{#602548}
[modify] https://crrev.com/f8dfbe74c1f5c79051461cdf448abf7f8188336f/components/viz/service/display/overlay_unittest.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 5

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

commit 043bdd225bcd415dbf81ba078b7981b51eef1408
Author: Wenzhao (Colin) Zang <wzang@chromium.org>
Date: Mon Nov 05 23:36:45 2018

Revert "viz: add unittests for CL:1291590"

This reverts commit f8dfbe74c1f5c79051461cdf448abf7f8188336f.

Reason for revert:  crbug.com/900373 

Original change's description:
> viz: add unittests for CL:1291590
> 
> BUG=896945
> TEST=SingleOverlayOnTopTest.AllowVideoNormalTransformWithOutputSurfaceOverlay
> 
> Change-Id: Iaa46909657f3e11f1d982f94aaff102676a74b4a
> Reviewed-on: https://chromium-review.googlesource.com/c/1292822
> Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
> Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> Cr-Commit-Position: refs/heads/master@{#602548}

TBR=dongseong.hwang@intel.com,dcastagna@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 896945,  900373 
Change-Id: I57a2c9770df54447e207e7a1d1079006087829ae
Reviewed-on: https://chromium-review.googlesource.com/c/1318359
Reviewed-by: Wenzhao (Colin) Zang <wzang@chromium.org>
Commit-Queue: Wenzhao (Colin) Zang <wzang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#605517}
[modify] https://crrev.com/043bdd225bcd415dbf81ba078b7981b51eef1408/components/viz/service/display/overlay_unittest.cc

Project Member

Comment 10 by bugdroid1@chromium.org, Nov 6

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

commit ec93e1108c6b20b6df8b54a88e48b043f00b1f59
Author: Wenzhao (Colin) Zang <wzang@chromium.org>
Date: Tue Nov 06 01:33:30 2018

Revert "viz: Fix wrong uv_rect calculation"

This reverts commit 4bf9d01dbf34f17c899095a937dabbb884ec87fe.

Reason for revert:  crbug.com/900373 

Original change's description:
> viz: Fix wrong uv_rect calculation
> 
> CL:1045256 calculates |uv_rect| of the primary plane in wrong way. It causes
> drmModeAtomicAddProperty failure. This CL fixes it.
> 
> BUG=896945
> 
> Change-Id: I6e914707cb961e8294e8ddd160b75e48ae5a2b64
> Reviewed-on: https://chromium-review.googlesource.com/c/1291590
> Commit-Queue: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
> Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> Cr-Commit-Position: refs/heads/master@{#601392}

TBR=dongseong.hwang@intel.com,dcastagna@chromium.org,hoegsberg@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 896945,  900373 
Change-Id: Ibab22a4fafb7be1ea0921f0cf774b5973d92b0b2
Reviewed-on: https://chromium-review.googlesource.com/c/1318796
Reviewed-by: Wenzhao (Colin) Zang <wzang@chromium.org>
Commit-Queue: Wenzhao (Colin) Zang <wzang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#605559}
[modify] https://crrev.com/ec93e1108c6b20b6df8b54a88e48b043f00b1f59/components/viz/service/display/overlay_processor.cc
[modify] https://crrev.com/ec93e1108c6b20b6df8b54a88e48b043f00b1f59/components/viz/service/display/overlay_unittest.cc

Cc: stevehuang@chromium.org
Labels: XAct
Project Member

Comment 12 by bugdroid1@chromium.org, Nov 28

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

commit 1ceb07933f73defaa73c30153fcbe812ad1965e0
Author: Dongseong Hwang <dongseong.hwang@intel.com>
Date: Wed Nov 28 01:15:08 2018

Reland "viz: Turn off or crop primary plane when possible"

This is a reland of I7946d7acab334bffdf2bb49a1d9c424cf46fc610 and
the following bug fixes as follows;
"viz: Fix wrong uv_rect calculation" 4bf9d01dbf34f17c899095a937dabbb884ec87fe
"viz: add unittests for CL:1291590" f8dfbe74c1f5c79051461cdf448abf7f8188336f

Additional fix:
- Fix the flickering issue because of primary |uv_rect| cropping even though
an overlay attemption fails mainly due to limited pixel rate (e.g. 4k video).
- Fix wrong |uv_rect| calculation which causes atomic page flip failures with
"No space left on device (28)" error.

Original change's description:
> viz: Turn off or crop primary plane when possible
>
> For many fullscreen cases, the rest of the renderpass quads are solid
> black quads. In that case, we can turn off the primary plane, and not
> having to scan out an full screen of black pixels saves a good deal of
> power. In other cases, we can crop down the primary plane down to the
> content rectangle (youtube channel logo, for example) and save power.
>
> Averaging battery draw measurement over about a minute of play back
> for a fullscreen youtube video, power savings for soraka is around
> 500mW (6.5W to 6.0W) and 300mW for kevin (4.4W to 4.1W), when we
> turn off the primary plane.
>
> Change-Id: I7946d7acab334bffdf2bb49a1d9c424cf46fc610
> Reviewed-on: https://chromium-review.googlesource.com/c/1045256
> Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> Commit-Queue: Kristian H. Kristensen <hoegsberg@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#600415}

TEST=SingleOverlayOnTopTest.AllowVideoNormalTransformWithOutputSurfaceOverlay

Bug: 896945,  900373 
Change-Id: I88db118dbc3ca2fed8c8eaf1f9a4337cdae12990
Reviewed-on: https://chromium-review.googlesource.com/c/1346997
Commit-Queue: Dongseong Hwang <dongseong.hwang@intel.com>
Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611484}
[modify] https://crrev.com/1ceb07933f73defaa73c30153fcbe812ad1965e0/components/viz/service/display/gl_renderer_unittest.cc
[modify] https://crrev.com/1ceb07933f73defaa73c30153fcbe812ad1965e0/components/viz/service/display/overlay_processor.cc
[modify] https://crrev.com/1ceb07933f73defaa73c30153fcbe812ad1965e0/components/viz/service/display/overlay_processor.h
[modify] https://crrev.com/1ceb07933f73defaa73c30153fcbe812ad1965e0/components/viz/service/display/overlay_strategy_single_on_top.cc
[modify] https://crrev.com/1ceb07933f73defaa73c30153fcbe812ad1965e0/components/viz/service/display/overlay_strategy_underlay.cc
[modify] https://crrev.com/1ceb07933f73defaa73c30153fcbe812ad1965e0/components/viz/service/display/overlay_unittest.cc

Owner: dongseon...@intel.com
Issue 896240 has been merged into this issue.
Cc: achaulk@chromium.org marc...@chromium.org dnicoara@chromium.org
 Issue 865739  has been merged into this issue.
Issue 901055 has been merged into this issue.
Labels: -Pri-3 Pri-1
Since Chrome 72.0.3625.0 (which is the revision where the CL #12 landed),
Acer Chromebook Tab ("dru") started crashing a lot in the mentioned CHECK():

b/120393443 (internal bug)

Chrome log and the stack trace attached.

Can the crash be due to the reland?
263104848-chromeos-test_chromeos6-row6-rack12-host18_cheets_CTS_N.7.1_r23.arm.txt
106 KB View Download
263104848-chromeos-test_chromeos6-row6-rack12-host18_debug_chrome.20181202.185126.10038.dmp.txt
51.0 KB View Download

Comment 18 Deleted

#c17 - thank you for sharing logs. let me take a look
crash because of following line of the log
[5561:5594:1202/185115.253442:ERROR:hardware_display_plane_manager_atomic.cc(140)] Failed to commit properties for page flip.: Invalid argument (22)

I guess ARM device have some issue with partial crtc rectangle.

kinaba@, Could you cc b/120393443 ot dongseong hwang <dongseong.hwang@intel.corp-partner.google.com> ?
#c17 - before we figure out ARM issue, there are 2 options for quick fix.
1. Disable crop optimization for ARM by #ifdef
2. Revert the patch

Or we add more log and fix it as soon as we have enough information.
3. land https://chromium-review.googlesource.com/c/chromium/src/+/1359466

What is a better option?
> kinaba@, Could you cc b/120393443 ot dongseong hwang <dongseong.hwang@intel.corp-partner.google.com> ?

Oops sorry, I tried, but the bug is in a restricted component that didn't accept the partner account.
That said, what's in the bug is the logs above and the reproduction step, and below is the repro.
The crash is consistently observed while running a test for Android on ChromeOS:

1. Prepare the device in developer mode, sign-in, enable Google Play Store, enable its developer mode, connect adb https://developer.android.com/topic/arc/development-environment#debug_with_adb
2. Download and expand "Android 7.1 R23 Compatibility Test Suite (CTS) - ARM" from https://source.android.com/compatibility/cts/downloads on your workstation.
3. ./android-cts/tools/cts-tradefed run commandAndExit cts -m CtsThemeHostTestCases



Re #21:
I'm not in the position to assess the importance of #12,
but if "2. revert the patch" is an acceptable option, I think that should be the one to take.
The fix is needed in M72 which has already branched. I don't think we want to do complex things on the branch.
Cc: jkardatzke@chromium.org
This is also causing breakage for full screen wayland apps in the Linux VM (Crostini). I would suggest reverting the breaking changes and then merging that into M72.
Project Member

Comment 25 by bugdroid1@chromium.org, Dec 7

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

commit e1809a76301288b5b74afc6a785cc2c15da0f938
Author: Kazuhiro Inaba <kinaba@google.com>
Date: Fri Dec 07 17:21:16 2018

Revert "Reland "viz: Turn off or crop primary plane when possible""

This reverts commit 1ceb07933f73defaa73c30153fcbe812ad1965e0.

Reason for revert: ARC and Crostini on ARM broken (crbug.com/896945#c17)

Original change's description:
> Reland "viz: Turn off or crop primary plane when possible"
>
> This is a reland of I7946d7acab334bffdf2bb49a1d9c424cf46fc610 and
> the following bug fixes as follows;
> "viz: Fix wrong uv_rect calculation" 4bf9d01dbf34f17c899095a937dabbb884ec87fe
> "viz: add unittests for CL:1291590" f8dfbe74c1f5c79051461cdf448abf7f8188336f
>
> Additional fix:
> - Fix the flickering issue because of primary |uv_rect| cropping even though
> an overlay attemption fails mainly due to limited pixel rate (e.g. 4k video).
> - Fix wrong |uv_rect| calculation which causes atomic page flip failures with
> "No space left on device (28)" error.
>
> Original change's description:
> > viz: Turn off or crop primary plane when possible
> >
> > For many fullscreen cases, the rest of the renderpass quads are solid
> > black quads. In that case, we can turn off the primary plane, and not
> > having to scan out an full screen of black pixels saves a good deal of
> > power. In other cases, we can crop down the primary plane down to the
> > content rectangle (youtube channel logo, for example) and save power.
> >
> > Averaging battery draw measurement over about a minute of play back
> > for a fullscreen youtube video, power savings for soraka is around
> > 500mW (6.5W to 6.0W) and 300mW for kevin (4.4W to 4.1W), when we
> > turn off the primary plane.
> >
> > Change-Id: I7946d7acab334bffdf2bb49a1d9c424cf46fc610
> > Reviewed-on: https://chromium-review.googlesource.com/c/1045256
> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> > Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> > Commit-Queue: Kristian H. Kristensen <hoegsberg@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#600415}
>
> TEST=SingleOverlayOnTopTest.AllowVideoNormalTransformWithOutputSurfaceOverlay
>
> Bug: 896945,  900373 
> Change-Id: I88db118dbc3ca2fed8c8eaf1f9a4337cdae12990
> Reviewed-on: https://chromium-review.googlesource.com/c/1346997
> Commit-Queue: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
> Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#611484}

TBR=dongseong.hwang@intel.com,dcastagna@chromium.org,hoegsberg@chromium.org

Bug: 896945,  900373 
Change-Id: Iec6d2812d94c286c495d90d8952b65ecffa4c010
Reviewed-on: https://chromium-review.googlesource.com/c/1363734
Reviewed-by: Kazuhiro Inaba <kinaba@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
Cr-Commit-Position: refs/heads/master@{#614732}
[modify] https://crrev.com/e1809a76301288b5b74afc6a785cc2c15da0f938/components/viz/service/display/gl_renderer_unittest.cc
[modify] https://crrev.com/e1809a76301288b5b74afc6a785cc2c15da0f938/components/viz/service/display/overlay_processor.cc
[modify] https://crrev.com/e1809a76301288b5b74afc6a785cc2c15da0f938/components/viz/service/display/overlay_processor.h
[modify] https://crrev.com/e1809a76301288b5b74afc6a785cc2c15da0f938/components/viz/service/display/overlay_strategy_single_on_top.cc
[modify] https://crrev.com/e1809a76301288b5b74afc6a785cc2c15da0f938/components/viz/service/display/overlay_strategy_underlay.cc
[modify] https://crrev.com/e1809a76301288b5b74afc6a785cc2c15da0f938/components/viz/service/display/overlay_unittest.cc

Labels: Merge-Request-72
Adding M72 merge request for the revert #25.
Project Member

Comment 27 by sheriffbot@chromium.org, Dec 8

Labels: -Merge-Request-72 Merge-Review-72 Hotlist-Merge-Review
This bug requires manual review: Reverts referenced in bugdroid comments after merge request.
Please contact the milestone owner if you have questions.
Owners: govind@(Android), kariahda@(iOS), djmm@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Cc: djmm@chromium.org
+djmm@ for merge approval, of the revert #25.
Labels: -Merge-Review-72 Merge-Approved-72
Project Member

Comment 30 by bugdroid1@chromium.org, Dec 10

Labels: -merge-approved-72 merge-merged-3626
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7

commit a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7
Author: Kazuhiro Inaba <kinaba@google.com>
Date: Mon Dec 10 12:14:50 2018

Revert "Reland "viz: Turn off or crop primary plane when possible""

This reverts commit 1ceb07933f73defaa73c30153fcbe812ad1965e0.

Reason for revert: ARC and Crostini on ARM broken (crbug.com/896945#c17)

Original change's description:
> Reland "viz: Turn off or crop primary plane when possible"
>
> This is a reland of I7946d7acab334bffdf2bb49a1d9c424cf46fc610 and
> the following bug fixes as follows;
> "viz: Fix wrong uv_rect calculation" 4bf9d01dbf34f17c899095a937dabbb884ec87fe
> "viz: add unittests for CL:1291590" f8dfbe74c1f5c79051461cdf448abf7f8188336f
>
> Additional fix:
> - Fix the flickering issue because of primary |uv_rect| cropping even though
> an overlay attemption fails mainly due to limited pixel rate (e.g. 4k video).
> - Fix wrong |uv_rect| calculation which causes atomic page flip failures with
> "No space left on device (28)" error.
>
> Original change's description:
> > viz: Turn off or crop primary plane when possible
> >
> > For many fullscreen cases, the rest of the renderpass quads are solid
> > black quads. In that case, we can turn off the primary plane, and not
> > having to scan out an full screen of black pixels saves a good deal of
> > power. In other cases, we can crop down the primary plane down to the
> > content rectangle (youtube channel logo, for example) and save power.
> >
> > Averaging battery draw measurement over about a minute of play back
> > for a fullscreen youtube video, power savings for soraka is around
> > 500mW (6.5W to 6.0W) and 300mW for kevin (4.4W to 4.1W), when we
> > turn off the primary plane.
> >
> > Change-Id: I7946d7acab334bffdf2bb49a1d9c424cf46fc610
> > Reviewed-on: https://chromium-review.googlesource.com/c/1045256
> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> > Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> > Commit-Queue: Kristian H. Kristensen <hoegsberg@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#600415}
>
> TEST=SingleOverlayOnTopTest.AllowVideoNormalTransformWithOutputSurfaceOverlay
>
> Bug: 896945,  900373 
> Change-Id: I88db118dbc3ca2fed8c8eaf1f9a4337cdae12990
> Reviewed-on: https://chromium-review.googlesource.com/c/1346997
> Commit-Queue: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
> Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#611484}

TBR=dongseong.hwang@intel.com,dcastagna@chromium.org,hoegsberg@chromium.org

Bug: 896945,  900373 
Change-Id: Iec6d2812d94c286c495d90d8952b65ecffa4c010
Reviewed-on: https://chromium-review.googlesource.com/c/1363734
Reviewed-by: Kazuhiro Inaba <kinaba@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#614732}(cherry picked from commit e1809a76301288b5b74afc6a785cc2c15da0f938)
Reviewed-on: https://chromium-review.googlesource.com/c/1369760
Cr-Commit-Position: refs/branch-heads/3626@{#193}
Cr-Branched-From: d897fb137fbaaa9355c0c93124cc048824eb1e65-refs/heads/master@{#612437}
[modify] https://crrev.com/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7/components/viz/service/display/gl_renderer_unittest.cc
[modify] https://crrev.com/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7/components/viz/service/display/overlay_processor.cc
[modify] https://crrev.com/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7/components/viz/service/display/overlay_processor.h
[modify] https://crrev.com/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7/components/viz/service/display/overlay_strategy_single_on_top.cc
[modify] https://crrev.com/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7/components/viz/service/display/overlay_strategy_underlay.cc
[modify] https://crrev.com/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7/components/viz/service/display/overlay_unittest.cc

Labels: Merge-Merged-72-3626
The following revision refers to this bug: 
https://chromium.googlesource.com/chromium/src.git/+/a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7

Commit: a0ffbe6455fc7eb3cfa1a80d2429ffc064b8ece7
Author: kinaba@google.com
Commiter: kinaba@chromium.org
Date: 2018-12-10 12:14:50 +0000 UTC

Revert "Reland "viz: Turn off or crop primary plane when possible""

This reverts commit 1ceb07933f73defaa73c30153fcbe812ad1965e0.

Reason for revert: ARC and Crostini on ARM broken (crbug.com/896945#c17)

Original change's description:
> Reland "viz: Turn off or crop primary plane when possible"
>
> This is a reland of I7946d7acab334bffdf2bb49a1d9c424cf46fc610 and
> the following bug fixes as follows;
> "viz: Fix wrong uv_rect calculation" 4bf9d01dbf34f17c899095a937dabbb884ec87fe
> "viz: add unittests for CL:1291590" f8dfbe74c1f5c79051461cdf448abf7f8188336f
>
> Additional fix:
> - Fix the flickering issue because of primary |uv_rect| cropping even though
> an overlay attemption fails mainly due to limited pixel rate (e.g. 4k video).
> - Fix wrong |uv_rect| calculation which causes atomic page flip failures with
> "No space left on device (28)" error.
>
> Original change's description:
> > viz: Turn off or crop primary plane when possible
> >
> > For many fullscreen cases, the rest of the renderpass quads are solid
> > black quads. In that case, we can turn off the primary plane, and not
> > having to scan out an full screen of black pixels saves a good deal of
> > power. In other cases, we can crop down the primary plane down to the
> > content rectangle (youtube channel logo, for example) and save power.
> >
> > Averaging battery draw measurement over about a minute of play back
> > for a fullscreen youtube video, power savings for soraka is around
> > 500mW (6.5W to 6.0W) and 300mW for kevin (4.4W to 4.1W), when we
> > turn off the primary plane.
> >
> > Change-Id: I7946d7acab334bffdf2bb49a1d9c424cf46fc610
> > Reviewed-on: https://chromium-review.googlesource.com/c/1045256
> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> > Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> > Commit-Queue: Kristian H. Kristensen <hoegsberg@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#600415}
>
> TEST=SingleOverlayOnTopTest.AllowVideoNormalTransformWithOutputSurfaceOverlay
>
> Bug: 896945,  900373 
> Change-Id: I88db118dbc3ca2fed8c8eaf1f9a4337cdae12990
> Reviewed-on: https://chromium-review.googlesource.com/c/1346997
> Commit-Queue: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Dongseong Hwang <dongseong.hwang@intel.com>
> Reviewed-by: Kristian H. Kristensen <hoegsberg@chromium.org>
> Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#611484}

TBR=dongseong.hwang@intel.com,dcastagna@chromium.org,hoegsberg@chromium.org

Bug: 896945,  900373 
Change-Id: Iec6d2812d94c286c495d90d8952b65ecffa4c010
Reviewed-on: https://chromium-review.googlesource.com/c/1363734
Reviewed-by: Kazuhiro Inaba <kinaba@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#614732}(cherry picked from commit e1809a76301288b5b74afc6a785cc2c15da0f938)
Reviewed-on: https://chromium-review.googlesource.com/c/1369760
Cr-Commit-Position: refs/branch-heads/3626@{#193}
Cr-Branched-From: d897fb137fbaaa9355c0c93124cc048824eb1e65-refs/heads/master@{#612437}

Sign in to add a comment