Closed Bug 901225 Opened 11 years ago Closed 11 years ago

WebGL rendering seems do not lock gralloc buffers correctly on b2g master

Categories

(Core :: Graphics: CanvasWebGL, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 917444
blocking-b2g koi+

People

(Reporter: sotaro, Assigned: dmarcos)

References

Details

Attachments

(1 file)

When using CrystalSkull App, the app's rendering often have a vertical and horizontal line.
Attached image screenshot
screen shot of the problem. Color is also incorrect. The color problem seems Bug 886415.
blocking-b2g: --- → koi?
Peter, what do you think?
Flags: needinfo?(pchang)
(In reply to Milan Sreckovic [:milan] from comment #2)
> Peter, what do you think?

I think this issue was related to bug 894847.
https://bugzilla.mozilla.org/show_bug.cgi?id=894847#c2

If we change texture swap of CanvasGL from async to sync, it will become better.
http://mxr.mozilla.org/mozilla-central/source/gfx/layers/client/CanvasClient.cpp#123

Because async way couldn't guarantee the buffer synchronization between content and chrome process.
Flags: needinfo?(pchang)
Depends on: 894847
Wait for the needinfo on bug 894847.  Sotaro, this only happens when HWC is not available?
Flags: needinfo?(sotaro.ikeda.g)
Also, is sync texture swap the only way to deal with this?
Flags: needinfo?(pchang)
It happens only on HwComposer rendering. I do not see this on OpenGL rendering. But on OpenGL rendering, performance is too bad(Bug 894847);
Flags: needinfo?(sotaro.ikeda.g)
This rendering problem might not be related to genlock.
(In reply to Milan Sreckovic [:milan] from comment #5)
> Also, is sync texture swap the only way to deal with this?

In my opinion, I think sync texture swap for b2g only could be a short-term solution.

For long-term solution, we still need to consider buffer management between content and chrome process to guarantee compositor doesn't use the same buffer as content process.
Flags: needinfo?(pchang)
Still can't decide if this is a blocker for 1.2.  What is it about CrystalScull app that triggers this?  Where else would we expect to see this kind of a problem?
The root cause of the problem seems same as Bug 917444. It is already koi+. By changing "gfx.gralloc.fence-with-readpixels" to true, the problem seems to be fixewd as in Bug 917444 Comment 2.
- Bug 917444 - [B2G][Gallery][Edit]Effects only filter part of an image and sometimes both parts incorrectly
Let's aim for koi+, and once we verify the same root cause, we can dupe this bug to 917444.
blocking-b2g: koi? → koi+
Diego, we think this is the same as bug 917444 that you have.
Assignee: nobody → dmarcos
(In reply to Sotaro Ikeda [:sotaro] from comment #10)
> The root cause of the problem seems same as Bug 917444. It is already koi+.
> By changing "gfx.gralloc.fence-with-readpixels" to true, the problem seems
> to be fixewd as in Bug 917444 Comment 2.
> - Bug 917444 - [B2G][Gallery][Edit]Effects only filter part of an image and
> sometimes both parts incorrectly

The result for "UpdateTextureSync" or "force readpixel" on content side both could fix the problem because they will wait for a period time for draw calls.

But "force readpixel" method may apply to content app which already calls "UpdateTextureSync" and it is not necessary for it.
It is a dup of Bug 917444. And discussion is going on there.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: