Closed Bug 1016805 Opened 6 years ago Closed 5 years ago

[dolphin]video crash

Categories

(Core :: Graphics: Layers, defect, critical)

28 Branch
ARM
Gonk (Firefox OS)
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla32
blocking-b2g 1.4+
Tracking Status
firefox30 --- wontfix
firefox31 --- wontfix
firefox32 --- fixed
b2g-v1.4 --- fixed
b2g-v2.0 --- fixed

People

(Reporter: ming.li, Assigned: sotaro)

References

()

Details

(Keywords: crash, regression, smoketest, Whiteboard: [caf-crash 231][caf priority: p1][CR 671118][sprd315886][partner-blocker][b2g-crash])

Attachments

(3 files, 4 obsolete files)

On the latest version of dophin:
step:
1.put some video files in sdcard
2.enter to video app
3.it will crash
Whiteboard: [sprd315886]
Attached file log
for dophin version hudson#105 : this bug can be reproduced 
<project name="gecko.git" path="gecko" remote="mozillaorg" revision="ef52f8028b3f60190f78801ac5dbd879f836a498" upstream="v1.4"/>

for dophin version hudson#104 : this version is ok
<project name="gecko.git" path="gecko" remote="mozillaorg" revision="913804d1cc347112fd033df8c18e683db074791f" upstream="v1.4"/>
only after this follow commit,this issue can be reproduced

commit 339e36147ca16b3d8ce9748e35923f841fea1c86  //reset ??? crash
Author: Sotaro Ikeda <sikeda@mozilla.com>
Date:   Fri May 16 17:32:00 2014 -0400

    Bug 984434 - Change ImageBridgeChild::FlushAllImages() to use async ipc. r=nical, a=1.4+
(In reply to Ming from comment #3)
> only after this follow commit,this issue can be reproduced
> 
> commit 339e36147ca16b3d8ce9748e35923f841fea1c86  //reset ??? crash
> Author: Sotaro Ikeda <sikeda@mozilla.com>
> Date:   Fri May 16 17:32:00 2014 -0400
> 
>     Bug 984434 - Change ImageBridgeChild::FlushAllImages() to use async ipc.
> r=nical, a=1.4+

Hi Sotaro,

I also confirmed the patch of Bug 984434 causes the crash when launching video app. It may need your help to figure it out. If you don't have device to look into, I can help to collect info you need.
Flags: needinfo?(sotaro.ikeda.g)
Summary: [dophin]video crash → [dolphin]video crash
Depends on: 984434
Whiteboard: [sprd315886] → [sprd315886][partner-blocker]
I have delphin device. I am going to check if I can reproduce the problem.
Assignee: nobody → sotaro.ikeda.g
Flags: needinfo?(sotaro.ikeda.g)
Thanks, Sotaro. We have removed this commit on my side by WIP patch.
blocking-b2g: --- → 1.4?
blocking-b2g: 1.4? → 1.4+
Component: Video/Audio → Graphics: Layers
Keywords: crash, regression
Whiteboard: [sprd315886][partner-blocker] → [sprd315886][partner-blocker][b2g-crash]
Video crash was crashed at OMXCodec.cpp:freeBuffersOnPort().

status_t OMXCodec::freeBuffersOnPort(
        ...
        CHECK(info->mStatus == OWNED_BY_US
                || info->mStatus == OWNED_BY_NATIVE_WINDOW);

        status_t err = freeBuffer(portIndex, i);
        ...
}

info->mStatus indicated OWNED_BY_CLIENT instead of OWNED_BY_US so it can't free buffer by portIndex.
Is there a document about how to build dolphin from source?

Just get source by uising the following failed by "Error: file not found: /mnt/sotaro/b2g_v14_dolphin/B2G/gaia-l0n"

> BRANCH=v1.4 configure.sh dolphin
> ./build.sh
(In reply to Sotaro Ikeda [:sotaro] from comment #8)
> Is there a document about how to build dolphin from source?
> 
> Just get source by uising the following failed by "Error: file not found:
> /mnt/sotaro/b2g_v14_dolphin/B2G/gaia-l0n"
> 
> > BRANCH=v1.4 configure.sh dolphin
> > ./build.sh

I found the necessary info in internal ml. I still can not understand why the build for dolphin is not configured as the above command works.
Catlee/ Aki

Can you please help Sotaro move ahead?
Flags: needinfo?(catlee)
Flags: needinfo?(aki)
Per Kai-Zhen Li, you can run this:

"Building Dolphin or Tarako will be failed, if gaia-l10n is missing, .
This is because l10n is enabled in device config by default.

If you got the same error, here is a reference for you.
In my local build, I run the attached script under B2G dir which will fetch/update gaia-l10n for Dolphin or Tarako."

--------------------
update-gaia-l10n.sh 
--------------------
#!/bin/bash
B2G_DIR=$(pwd)

. "$B2G_DIR/.config"

if [ "$DEVICE_NAME" = "tarako" ]; then
  BRANCH=v1.3
elif [ "$DEVICE_NAME" = "dolphin" ]; then
  DEVICE=scx15
  BRANCH=v1.4
fi

L10N_LIST=`grep ':' device/sprd/$DEVICE/languages.json | cut -d '"' -f 2`

[ ! -d $B2G_DIR/gaia-l10n ] && mkdir $B2G_DIR/gaia-l10n
cd $B2G_DIR/gaia-l10n

for l in $L10N_LIST
do
	echo "updating $l ..."
	if [ ! -d $l ]; then
    git clone https://git.mozilla.org/releases/l10n/$l/gaia.git -b $BRANCH $l
	else
    cd $l && git pull && cd ..
	fi
done
cd $B2G_DIR
Flags: needinfo?(aki)
Flags: needinfo?(catlee)
(In reply to Aki Sasaki [:aki] from comment #11)
> Per Kai-Zhen Li, you can run this:
> 
> "Building Dolphin or Tarako will be failed, if gaia-l10n is missing, .
> This is because l10n is enabled in device config by default.
> 
> If you got the same error, here is a reference for you.
> In my local build, I run the attached script under B2G dir which will
> fetch/update gaia-l10n for Dolphin or Tarako."
> 
Thanks!
(In reply to Vincent Liu[:vliu] from comment #7)
> Video crash was crashed at OMXCodec.cpp:freeBuffersOnPort().
> 
> status_t OMXCodec::freeBuffersOnPort(
>         ...
>         CHECK(info->mStatus == OWNED_BY_US
>                 || info->mStatus == OWNED_BY_NATIVE_WINDOW);
> 
>         status_t err = freeBuffer(portIndex, i);
>         ...
> }
> 
> info->mStatus indicated OWNED_BY_CLIENT instead of OWNED_BY_US so it can't
> free buffer by portIndex.

I re-generated the crash on dolphin device.
I flashed ROM to dolphin several time(more than 10 times) by "./flash.sh". After that, somehow dolphin device seems to bricked. Is there a information about how to do recovery dolphin device?
(In reply to Ming from comment #0)
> On the latest version of dophin:
> step:
> 1.put some video files in sdcard
> 2.enter to video app
> 3.it will crash

Ming, is the problem happens by using latest Firefox OS v2.0(master)? The above does not say which source code is using.
Flags: needinfo?(ming.li)
Finally my dolphin device was bricked. But I seems to understand the cause of the problem on b2g v1.4. OMXCodec's shutdown start even when all gralloc buffer's are not returned to OMXCodec. Last gralloc buffer is not returned to OmxDecoder even when ImageContainer::ClearAllImages() completed.
The patch used for debugging.
vliu, can you check if attachment 8431159 [details] [diff] [review] fix the problem on b2g v1.4? My dolphin is bricked :-(
Flags: needinfo?(vliu)
(In reply to Sotaro Ikeda [:sotaro] from comment #15)

> Ming, is the problem happens by using latest Firefox OS v2.0(master)? The
> above does not say which source code is using.
it is v1.4
Flags: needinfo?(ming.li)
Can someone confirm if the problem happens on b2g 2.0(master)?
(In reply to Sotaro Ikeda [:sotaro] from comment #19)
> vliu, can you check if attachment 8431159 [details] [diff] [review] fix the
> problem on b2g v1.4? My dolphin is bricked :-(

Sure. Confirming on Dolhpin device.

(In reply to Sotaro Ikeda [:sotaro] from comment #21)
> Can someone confirm if the problem happens on b2g 2.0(master)?

I'd tried b2g 2.0(master) on Nexus-4-kk device, and it works well without crash.
Flags: needinfo?(vliu)
(In reply to Sotaro Ikeda [:sotaro] from comment #19)
> vliu, can you check if attachment 8431159 [details] [diff] [review] fix the
> problem on b2g v1.4? My dolphin is bricked :-(

Hi Sotaro,

Your patch fix the crash issue on dolphin device (v1.4). Thanks for your great help. :)
Sotaro, when can we land this patch on v1.4?
Ming, we need update the patch.
Flags: needinfo?(ming.li)
 
https://bug1016805.bugzilla.mozilla.org/attachment.cgi?id=8431159 works fine on dolphin's latest version.
So i temply aplly it in sprd side. Once it is laned for v1.4, i will drop the temp patch.
Flags: needinfo?(ming.li)
Ming, vliu, thanks for the confirmation! I am glad the patch fixed the problem.
Attachment #8431157 - Attachment is obsolete: true
Attachment #8431159 - Attachment is obsolete: true
Attachment #8431566 - Flags: review?(nical.bugzilla)
(In reply to Sotaro Ikeda [:sotaro] from comment #27)
> Created attachment 8431566 [details] [diff] [review]
> patch v2 - fix AsyncTransactionTracker handling

Do you have a patch compatible for v1.4?
Whiteboard: [sprd315886][partner-blocker][b2g-crash] → [CR 671118][sprd315886][partner-blocker][b2g-crash]
Crash observed on: 

Device: msm8610
Gonk Version: AU_LINUX_GECKO_B2G_KK_3.5.01.04.00.113.114
Moz BuildID: 20140528000201
B2G Version: 1.4
Gecko Version: 30.0
Gaia:  http://git.mozilla.org/?p=releases/gaia.git;a=commit;h=cd595be0a8e975559e8938830df5face89bec3e8
Gecko: http://git.mozilla.org/?p=releases/gecko.git;a=commit;h=d591b0c691da6847dcb9a4f626211b597e8807fe
Blocks: 984663
Do you have a patch compatible for v1.4?
Flags: needinfo?(sotaro.ikeda.g)
(In reply to bhargavg1 from comment #30)
> Do you have a patch compatible for v1.4?

Why do you need a patch now? The fix is still waiting for the review. Anyway, I am going to provide a patch for v1.4.
Flags: needinfo?(sotaro.ikeda.g)
(In reply to Sotaro Ikeda [:sotaro] from comment #31)
> (In reply to bhargavg1 from comment #30)
> > Do you have a patch compatible for v1.4?
> 
> Why do you need a patch now? The fix is still waiting for the review.
> Anyway, I am going to provide a patch for v1.4.

I am unable to correctly revert the patch or apply the patch in review. This is affecting our stability runs
A patch for b2g v1.3.
(In reply to Sotaro Ikeda [:sotaro] from comment #33)
> Created attachment 8433476 [details] [diff] [review]
> patch v2 for b2gv1.3 - fix AsyncTransactionTracker handling
> 
> A patch for b2g v1.3.

you meant v1.4 right?
Attachment #8433476 - Attachment description: patch v2 for b2gv1.3 - fix AsyncTransactionTracker handling → patch v2 for b2gv1.4 - fix AsyncTransactionTracker handling
(In reply to bhargavg1 from comment #34)
> (In reply to Sotaro Ikeda [:sotaro] from comment #33)
> > Created attachment 8433476 [details] [diff] [review]
> > patch v2 for b2gv1.3 - fix AsyncTransactionTracker handling
> > 
> > A patch for b2g v1.3.
> 
> you meant v1.4 right?

Yes. I updated the name of the patch. Thanks.
Attachment #8431566 - Flags: review?(nical.bugzilla) → review+
Whiteboard: [CR 671118][sprd315886][partner-blocker][b2g-crash] → [caf priority: p1][CR 671118][sprd315886][partner-blocker][b2g-crash]
It seems better to change the patch not to affect to other platforms than gonk.
Attachment #8433476 - Attachment is obsolete: true
Reduce the change to minimum not to affect to other platforms than gonk. Carry "r=nical".
Attachment #8431566 - Attachment is obsolete: true
Attachment #8434274 - Flags: review+
Blocks: 1020003
Status: NEW → ASSIGNED
https://hg.mozilla.org/mozilla-central/rev/243d19db57a5
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
Observed on: 

Device: msm8610
Gonk Version: AU_LINUX_GECKO_B2G_KK_3.5.01.04.00.113.122
Moz BuildID: 20140604000202
B2G Version: 1.4
Gecko Version: 30.0
Gaia:  http://git.mozilla.org/?p=releases/gaia.git;a=commit;h=0c16adced7c51f795ef250aebe184f60b6a9b987
Gecko: http://git.mozilla.org/?p=releases/gecko.git;a=commit;h=157a45f1fa280296dc9204de6def0b5b370ed2bd
(In reply to cafbot (PoC: ggrisco) from comment #44)
> Observed on: 
> 
> Device: msm8610
> Gonk Version: AU_LINUX_GECKO_B2G_KK_3.5.01.04.00.113.122
> Moz BuildID: 20140604000202
> B2G Version: 1.4
> Gecko Version: 30.0
> Gaia: 
> http://git.mozilla.org/?p=releases/gaia.git;a=commit;
> h=0c16adced7c51f795ef250aebe184f60b6a9b987
> Gecko:
> http://git.mozilla.org/?p=releases/gecko.git;a=commit;
> h=157a45f1fa280296dc9204de6def0b5b370ed2bd

No idea what this is about. No STR, no log, different platform. I assume this is just a spam.
The logs are very useful. They confirm that the crash was still observable with certain changesets. More info is great, but less is never better.
(In reply to Andreas Gal :gal from comment #46)
> The logs are very useful. They confirm that the crash was still observable
> with certain changesets. More info is great, but less is never better.

To clarify, I just wanted to say what I saw from that comment. There was no STR, no log, and it even happened on different platform and without Sotaro's patch (according to comment 44, the build was 20140604000202). Since I do believe that CAF would report a regression bug very carefully, I used the word 'spam' because that's the word that Greg has ever used on another issue for a similar scenario. Please see bug 1011110 comment 25 ~ 27.

I had no offense but I definitely could express better. Apologize to everyone who felt offended.
Attached file log-for-crash.log
hi Sotaro Ikeda:

   a similar issue about the video crash appear in my side.put a number of video files into the sdcard,and then enter video app,the app will crash before the files have been loaded.the Probability of occurrence is about 1/5.

   the relevant logs are listed in the attachment.
   can you help to confirm the issue?
Flags: needinfo?(sotaro.ikeda.g)
(In reply to jingmei.zhang from comment #48)
> Created attachment 8456037 [details]
> log-for-crash.log

jingmei.zhang, does the crash happen when bug 1035755 fix applied?
Flags: needinfo?(sotaro.ikeda.g) → needinfo?(jingmei.zhang)
(In reply to Sotaro Ikeda [:sotaro] from comment #49)
> jingmei.zhang, does the crash happen when bug 1035755 fix applied?
it seems good after the bug 1035755 fix applied.

I have tried 20 times,the issue did not occur.

thank you!
Flags: needinfo?(jingmei.zhang)
Whiteboard: [caf priority: p1][CR 671118][sprd315886][partner-blocker][b2g-crash] → [caf-crash 231][caf priority: p1][CR 671118][sprd315886][partner-blocker][b2g-crash]
Flags: in-moztrap?(ychung)
Test case found: https://moztrap.mozilla.org/manage/case/2478/
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Test case added in moztrap:

https://moztrap.mozilla.org/manage/case/14338/
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
Flags: in-moztrap?(ychung)
Flags: in-moztrap+
You need to log in before you can comment on or make changes to this bug.