[B2G] With Skia/GL, canvases get re-composited with B and R channels swapped

RESOLVED FIXED

Status

Firefox OS
Hardware
RESOLVED FIXED
5 years ago
4 years ago

People

(Reporter: bjacob, Assigned: pchang)

Tracking

(Blocks: 1 bug)

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(3 attachments)

Created attachment 783381 [details]
testcase

Attached testcase just draws a red quad.

On B2G with Skia/GL (as enabled by attachment 782802 [details] [diff] [review]) this is first painted correctly, then (after half a second) re-painted in blue i.e. with R and B channels swapped.

This is in particular at least one of the problems happening in bug 899341.
(Reporter)

Comment 1

5 years ago
Created attachment 783394 [details]
testcase updated to print the RGBA values from the canvas after it's been composited

This shows that the RGBA values read back from the canvas are correct (255, 0, 0, 255) even after the canvas has been re-rendered as blue. This means that the problem is purely a compositing problem, not an issue with the canvas' backbuffer actually getting modified.
(Reporter)

Updated

5 years ago
Summary: [B2G] With Skia/GL, canvases get re-painted with B and R channels swapped → [B2G] With Skia/GL, canvases get re-composited with B and R channels swapped
(Assignee)

Updated

5 years ago
Depends on: 886415
(Assignee)

Comment 2

5 years ago
This issue was related to hwc composition which happened on leo and hamachi.
You can use below steps to disable HWC composition.

Right now we are waiting for bug 886415 to land.

1. adb shell mv /system/lib/hw/hwcomposer.msm7627a.so /system/lib/hw/hwcomposer.msm7627a.so_bak
2. adb shell stop b2g
3. adb shell start b2g

Updated

5 years ago
Blocks: 900827
(Reporter)

Updated

5 years ago
Blocks: 905214
(Reporter)

Comment 3

5 years ago
Peter, now that bug 886415 is fixed, what are the next steps here?
Flags: needinfo?(pchang)
(Reporter)

Comment 4

5 years ago
Milan, this might be the most 'open' of the remaining blockers for Skia/GL/B2G1.2. Need to figure whom this bug should be assigned to. I feel that I should finish work on the other blockers I'm already working on, before looking more into this one, so this might be better assigned to someone else than me.
(Reporter)

Updated

5 years ago
Flags: needinfo?(milan)
Peter, any chance you can take a look at this?  It seems very related to the work you've previously done.
Assignee: nobody → pchang
Flags: needinfo?(milan)
(Assignee)

Comment 6

5 years ago
I will import QCT release patch to B2G soon.
Flags: needinfo?(pchang)
(Assignee)

Comment 7

5 years ago
Created attachment 793824 [details] [diff] [review]
import RBSwap patch from CAF's patch queue
Attachment #793824 - Flags: review?(bjacob)
(Assignee)

Updated

5 years ago
Attachment #793824 - Flags: review?(mwu)

Updated

5 years ago
Attachment #793824 - Flags: review?(mwu) → review+
(Assignee)

Comment 8

5 years ago
Verified the imported patch with my leo device and didn't have problem.

Paste the pull request link.
https://github.com/mozilla-b2g/gonk-patches/pull/2/commits
(Assignee)

Comment 9

5 years ago
Comment on attachment 793824 [details] [diff] [review]
import RBSwap patch from CAF's patch queue

Michael, could you help me to grant my git pullrequest?
Attachment #793824 - Flags: review?(bjacob) → review+
(Assignee)

Comment 10

5 years ago
Since I just imported the patch which got review+ on bug 881460 from QCT CAF, I think mwu's r+ is enough.
(Assignee)

Comment 11

5 years ago
Michael, do you know who can help to grant the git pullrequest?
Flags: needinfo?(mwu)

Comment 12

5 years ago
I'll do it on Monday if you can't find someone in the Taipei office with access to the repo.
Flags: needinfo?(mwu)
(Assignee)

Comment 13

5 years ago
(In reply to Michael Wu [:mwu] from comment #12)
> I'll do it on Monday if you can't find someone in the Taipei office with
> access to the repo.

I see, I will find mchen in TPE office first.
(Assignee)

Comment 14

5 years ago
patch was merged, close case.

https://github.com/mozilla-b2g/gonk-patches
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED

Updated

5 years ago
Duplicate of this bug: 906534
Component: Graphics → Hardware
Product: Core → Boot2Gecko
Version: Trunk → unspecified

Comment 16

5 years ago
Hi Wayne :
 Please help us to push to merge this case into V1.1 HD. It blocked the Helix Device .If you can not resolve it , please get the authorization from carrier.

Updated

5 years ago
Flags: needinfo?(wchang)
In case this is confusing others as it has me - even though this bug was specific to 1.2, as SkiaGL wasn't on 1.1 or earlier, the fix is the same as for the duplicated bug 915869, and that is the one that is 1.1 specific.
(In reply to Milan Sreckovic [:milan] from comment #17)
> ...
> for the duplicated bug 915869, and that is the one that is 1.1 specific.

That would be bug 906534 instead.

Updated

5 years ago
Duplicate of this bug: 906534

Updated

4 years ago
Flags: needinfo?(wchang)
You need to log in before you can comment on or make changes to this bug.