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

Issue 597803 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Apr 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android
Pri: 1
Type: Bug

Blocking:
issue 597791



Sign in to add a comment

Blimp client crashes at software_image_decode_controller.cc(474) soon after launch.

Project Member Reported by anandc@chromium.org, Mar 24 2016

Issue description

Steps:
Sync and build Blimp client and engine.
Launch the engine from desktop, following steps here:
https://chromium.googlesource.com/chromium/src/+/master/blimp/docs/running.md

Install Blimp client APK on a device, with the required command-line parameters to make it point to engine running on desktop.

Launch Blimp client.
Make sure assignment succeeds and you Engine logs indicating the client connected to it.

Result:
The client crashes soon after "Assignment succeeded."

Stack info:

F/chromium(29768): [FATAL:software_image_decode_controller.cc(474)] Check failed: result. 
F/chromium(29768): #00 0xa5596117 /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so+0x0007a117
F/chromium(29768): #01 0xa448653b /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x0011453b
F/chromium(29768): #02 0xa4485f97 /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x00113f97
F/chromium(29768): #03 0xa44879dd /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x001159dd
F/chromium(29768): #04 0xa4464f39 /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x000f2f39
F/chromium(29768): #05 0xa4464e47 /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x000f2e47
F/chromium(29768): #06 0xa55cab35 /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so+0x000aeb35
F/chromium(29768): #07 0xa55caab5 /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so+0x000aeab5
F/chromium(29768): #08 0xa55c8085 /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so+0x000ac085
F/chromium(29768): #09 0xb6d8f59f /system/lib/libc.so+0x0001659f
F/chromium(29768): #10 0xb6d8d4cb /system/lib/libc.so+0x000144cb
F/chromium(29768): #11 0xffffffff <unknown>
F/chromium(29768): 
F/libc    (29768): Fatal signal 6 (SIGABRT), code -6 in tid 29809 (BlimpCompositor)
I/DEBUG   (  142): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   (  142): Build fingerprint: 'google/4560MMX/4560MMX_sprout:5.1.1/LMY47W/1837160:userdebug/dev-keys'
I/DEBUG   (  142): Revision: '0'
I/DEBUG   (  142): ABI: 'arm'
I/DEBUG   (  142): pid: 29768, tid: 29809, name: BlimpCompositor  >>> org.chromium.blimp <<<
I/DEBUG   (  142): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
I/DEBUG   (  142): Abort message: '[FATAL:software_image_decode_controller.cc(474)] Check failed: result. 
I/DEBUG   (  142): #00 0xa5596117 /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so+0x0007a117
I/DEBUG   (  142): #01 0xa448653b /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x0011453b
I/DEBUG   (  142): #02 0xa4485f97 /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x00113f97
I/DEBUG   (  142): #03 0xa44879dd /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x001159dd
I/DEBUG   (  142): #04 0xa4464f39 /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so+0x000f2f39
I/DEBUG   (  142): #05 0xa4464e47 /data/app/org.chromiu
I/DEBUG   (  142):     r0 00000000  r1 00007471  r2 00000006  r3 00000000
I/DEBUG   (  142):     r4 a1f2cdd8  r5 00000006  r6 00000000  r7 0000010c
I/DEBUG   (  142):     r8 a1f2c4e0  r9 00000000  sl b76dbe68  fp b770f7e8
I/DEBUG   (  142):     ip 00007471  sp a1f2bfe8  lr b6d8fdb5  pc b6db6980  cpsr 600f0010
I/DEBUG   (  142): 
I/DEBUG   (  142): backtrace:
I/DEBUG   (  142):     #00 pc 0003d980  /system/lib/libc.so (tgkill+12)
I/DEBUG   (  142):     #01 pc 00016db1  /system/lib/libc.so (pthread_kill+52)
I/DEBUG   (  142):     #02 pc 000179c7  /system/lib/libc.so (raise+10)
I/DEBUG   (  142):     #03 pc 00014169  /system/lib/libc.so (__libc_android_abort+36)
I/DEBUG   (  142):     #04 pc 000124f0  /system/lib/libc.so (abort+4)
I/DEBUG   (  142):     #05 pc 0006a1c5  /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so (base::debug::BreakDebugger()+20)
I/DEBUG   (  142):     #06 pc 0007a31d  /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so (logging::LogMessage::~LogMessage()+560)
I/DEBUG   (  142):     #07 pc 00114539  /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so (cc::SoftwareImageDecodeController::DecodeImageInternal(cc::ImageDecodeControllerKey const&, cc::DrawImage const&)+1044)
I/DEBUG   (  142):     #08 pc 00113f95  /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so (cc::SoftwareImageDecodeController::DecodeImage(cc::ImageDecodeControllerKey const&, cc::DrawImage const&)+288)
I/DEBUG   (  142):     #09 pc 001159db  /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so
I/DEBUG   (  142):     #10 pc 000f2f39  /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so (cc::SingleThreadTaskGraphRunner::RunTaskWithLockAcquired()+204)
I/DEBUG   (  142):     #11 pc 000f2e45  /data/app/org.chromium.blimp-1/lib/arm/libcc.cr.so (cc::SingleThreadTaskGraphRunner::Run()+40)
I/DEBUG   (  142):     #12 pc 000aeb35  /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so (base::DelegateSimpleThread::Run()+60)
I/DEBUG   (  142):     #13 pc 000aeab5  /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so (base::SimpleThread::ThreadMain()+96)
I/DEBUG   (  142):     #14 pc 000ac085  /data/app/org.chromium.blimp-1/lib/arm/libbase.cr.so
I/DEBUG   (  142):     #15 pc 0001659f  /system/lib/libc.so (__pthread_start(void*)+30)
I/DEBUG   (  142):     #16 pc 000144cb  /system/lib/libc.so (__start_thread+6)
D/TaskPersister(  517): removeObsoleteFile: deleting file=417_task.xml
I/DEBUG   (  142): 

 
Owner: khushals...@chromium.org
Can you share the revision that you're building this from?

Comment 2 by anandc@chromium.org, Mar 24 2016

It's a ToT build. Sync-ed earlier today at commit 25e8e9a87ba795375862c9a33ae3d9704eebe489.

Comment 3 by anandc@chromium.org, Mar 24 2016

Summary: Blimp client crashes at software_image_decode_controller.cc(474) soon after launch. (was: Blimp client crashes soon after launch.)
Status: WontFix (was: Untriaged)
We are not seeing this issue anymore.

Comment 5 by anandc@chromium.org, Mar 26 2016

Status: Assigned (was: WontFix)
Just sync-ed to c4f0abb4666f3296485e53fd5ede71f161938048, rebuilt Blimp app and engine.
Seeing this crash consistently now:
Run engine locally.
Launch Blimp.
Result: Assignment succeeds, then Blimp crashes.
Stack-trace is the same as above.

Looks like there was an issue with the device.
Is there any follow up required on this bug?

Comment 7 by anandc@chromium.org, Mar 29 2016

Status: WontFix (was: Assigned)
Nope. Not seeing this any more.

Comment 8 by anandc@chromium.org, Mar 30 2016

Status: Assigned (was: WontFix)
Aah, seeing this again today. Synced to 868930a9584029000df4c195dbd6be71ee98c1da, rebuilt Engine and Client. Install Blimp on device and launch it.
Get the crash noted above.

Not sure why this doesn't happen everytime. i.e., it was working OK yesterday, it's back again today.
Rebooted the device, reinstalled the Blimp APK, same result.
This is the Blimp APK command line:

Existing flags (in /data/local/blimp-command-line):
  <deleted>: 'chrome --engine-ip=127.0.0.1 --engine-port=25467 --engine-transport=tcp'

Engine is launched with this command:
DISPLAY="" out-linux/Debug/blimp_engine_app --user-data-dir=/tmp/blimpengine --enable-logging=stderr --enable-logging   --vmodule="blimp*=2" --disable-gpu  --use-remote-compositing --disable-cached-picture-raster   --blimp-client-token-path=<path to blimpengine-token> --use-gl=osmesa




I can repo the crash after loading  cricbuzz.com. But not Client crash, it was Engine that crashes. 

[1:1:0330/170909:FATAL:display_item_list.cc(107)] Check failed: retain_individual_display_items_. 
#0 0x7f30d098654e base::debug::StackTrace::StackTrace()
#1 0x7f30d09e6dcf logging::LogMessage::~LogMessage()
#2 0x7f30d1bd9c29 cc::DisplayItemList::ToProtobuf()
#3 0x7f30d1be5341 cc::RecordingSource::ToProtobuf()
#4 0x7f30d1b234d4 cc::PictureLayer::LayerSpecificPropertiesToProto()
#5 0x7f30d1aed4d4 cc::Layer::ToLayerPropertiesProto()
#6 0x7f30d1b15183 cc::LayerProtoConverter::SerializeLayerProperties()
#7 0x7f30d1d10e52 cc::LayerTreeHost::ToProtobufForCommit()
#8 0x7f30d1dd41e9 cc::RemoteChannelMain::StartCommitOnImpl()
#9 0x7f30d1dc1597 cc::ProxyMain::BeginMainFrame()
#10 0x7f30d1dd3926 cc::RemoteChannelMain::HandleProto()
#11 0x7f30d1dd364f cc::RemoteChannelMain::OnProtoReceived()
#12 0x7f30ce3e1080 content::RenderWidgetCompositor::OnHandleCompositorProto()
#13 0x7f30ce573b0d content::RenderWidget::OnHandleCompositorProto()

Cc: khushals...@chromium.org
Owner: nyquist@chromium.org
haibin@, the bug for this crash is with the PictureImageLayer, crbug/597163. The fix for this is in CQ.

I'll let Tommy take a look at the image decode error, since it might be tied to the WebPDecoder.
Blocking: 597791

Comment 12 by w...@chromium.org, Apr 1 2016

Cc: anandc@chromium.org
Labels: M-51 OS-Android OS-Linux
Can we still repro the image decode error?
Yes, I got the crash at software_image_decode_controller.cc just now here, sync-ed earlier today.
Status: Started (was: Assigned)
With extra debug info from https://codereview.chromium.org/1869573002/


[FATAL:software_image_decode_controller.cc(475)] Check failed: result. id[2] src_rect[0,0 500x228] target_size[428x195] filter_quality[3] can_use_original_decode [0] hash [1151724940]

Stack Trace:
  RELADDR   FUNCTION                 FILE:LINE
  00a6403b  ~LogMessage              base/logging.cc:519
  0078eabf  DecodeImageInternal      cc/tiles/software_image_decode_controller.cc:475
  0078e43b  DecodeImage              cc/tiles/software_image_decode_controller.cc:337
  0078ff01  RunOnWorkerThread        cc/tiles/software_image_decode_controller.cc:71
  0076e289  RunTaskWithLockAcquired  cc/raster/single_thread_task_graph_runner.cc:156
  0076e197  Run                      cc/raster/single_thread_task_graph_runner.cc:117
  00a952d9  Run                      base/threading/simple_thread.cc:87
  00a9525d  ThreadMain               base/threading/simple_thread.cc:66
  00a92a25  ThreadFunc               base/threading/platform_thread_posix.cc:70
  000415db  <unknown>                /system/lib/libc.so
  00019235  <unknown>                /system/lib/libc.so


This seems easier to reproduce on an Android One device.
Project Member

Comment 17 by bugdroid1@chromium.org, Apr 6 2016

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

commit f4334d7c1f87b92397c8572a9c413d13eb135a28
Author: vmpstr <vmpstr@chromium.org>
Date: Wed Apr 06 23:42:25 2016

cc: Images: Add more information to image decode controller DCHECKs

This patch adds more information to the image decode controller DCHECKs
in order to be able to diagnose the problems better.

BUG= 597803 
R=nyquist@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1869573002

Cr-Commit-Position: refs/heads/master@{#385575}

[modify] https://crrev.com/f4334d7c1f87b92397c8572a9c413d13eb135a28/cc/tiles/software_image_decode_controller.cc

Project Member

Comment 19 by bugdroid1@chromium.org, Apr 7 2016

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

commit 384c6056c4e1d0eb347f705c454437ae40e6f7cb
Author: nyquist <nyquist@chromium.org>
Date: Thu Apr 07 23:07:06 2016

Add support for defaulting to low quality image interpolation.

Currently only Android sets the flag for
WTF_USE_LOW_QUALITY_IMAGE_INTERPOLATION since it has been the only
platform needing it.

When painting images on one platform, and reproducing them
remotely, the painting side must make sure that the receiving side
is able to render them and ensure that there is no mismatch.

This CL declares a new GN arg so that other platforms may optionally
set this flag as well. The new GN arg is
use_low_quality_image_interpolation and it defaults to is_android.

There should be no changes to existing behavior if the flag is not
set.

BUG= 597803 
R=dpranke@chromium.org
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1867093002

Cr-Commit-Position: refs/heads/master@{#385913}

[modify] https://crrev.com/384c6056c4e1d0eb347f705c454437ae40e6f7cb/build/args/blimp_engine.gn
[modify] https://crrev.com/384c6056c4e1d0eb347f705c454437ae40e6f7cb/third_party/WebKit/Source/config.gni
[modify] https://crrev.com/384c6056c4e1d0eb347f705c454437ae40e6f7cb/tools/mb/mb_config.pyl

Status: Fixed (was: Started)
Owner: prabhur@chromium.org
Labels: Archive-Blimp

Sign in to add a comment