[Bug] all sites are blank since 84.1.1 on Adreno 510
Categories
(Core :: Graphics: WebRender, defect, P1)
Tracking
()
People
(Reporter: kbrosnan, Assigned: jnicol)
References
(Blocks 2 open bugs, Regression)
Details
(Keywords: correctness, regression)
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
RyanVM
:
approval-mozilla-release+
|
Details |
From github: https://github.com/mozilla-mobile/fenix/issues/17181.
Firefox does not show(render) any website. No google search, nothing. You just got a white or black pane where content should be shown, no matter which URL. Looks like others have this problem too: https://www.reddit.com/r/firefox/comments/kfg3zb/8411_stable_any_url_only_shows_a_blank_background/.
It looks like you can still click on unvisible links on this blank screen and the url changes, so it must be the rendering .I am using firefox for a long time on this device and never got a ( serious ;-) )problem before. Just V 84.1.1 is completly broken for me.
I have no plugins installed and already restarted the device and so on...Steps to reproduce
I got an update from playstore and now firefox does not show any more webites. You either get a white or a black screen.
Just install firefox 84.1.1 and you get the trouble. ( on this device )Expected behavior
firefox should show websites
Actual behavior
firefox just shows white or black blank screen as content.
Device information
Android device: Xiaomi redmi note 3 global
Android 6.0.1 MMB29M ( MIUMI Global 10.2 Stable 10.2.1.0(MHRMIXXM))Fenix version: 84.1.1 (Build #2015781795)
Change performed by the Move to Bugzilla add-on.
Reporter | ||
Comment 1•4 years ago
|
||
I tried the Android 6 devices I have and are not able to reproduce. I have a Mali based Mi-498 and Adreno 330 based Xiaomi Mi 4 LTE.
Comment 2•4 years ago
|
||
:jnicol, is WebRender enabled on Adreno 510?
Updated•4 years ago
|
Comment 3•4 years ago
|
||
Bug 1656554 seems to enable WebRender on Adreno 510 since Firefox 81.
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Comment 4•4 years ago
|
||
I have a feeling this might be the same as bug 1678585. It was caused by using persistently mapped buffers (bug 1661528) which landed in 84. It is an Adreno driver bug which appears to be present in Android 6, but not later versions.
I had only seen it on an Adreno 4xx running Android 6 (which wasn't a problem because Adreno 4xx does not have webrender enabled yet). But I can believe that it also affects Adreno 5xx running Android 6. All my Adreno 5xx devices run newer android versions, so I had not seen this. Kevin's Adreno 3xx device would not reproduce because they do not support the EXT_buffer_storage extension, so we do not use the buggy code path.
What we need to do is ensure that supports_buffer_storage
is false here on affected devices. For now, I would just do a blanket check for all Adreno. ie wrap the current condition in parenthesis, and append && !is_adreno
. (And move the existing let is_adreno...
statement up a few lines)
As a follow up, we can try to find a precise driver version to disable it against.
Updated•4 years ago
|
Assignee | ||
Comment 5•4 years ago
|
||
There is a driver bug on old versions of the Adreno driver which
prevents usage of persistenly mapped buffers for texture
uploads. Creating and mapping the buffer works correctly, but
attempting to upload to a texture from the buffer results in an error
due to the buffer still being mapped.
This means that no texture data is uploaded, essentially meaning that
we do not render anything at all.
It appears to affect at least Adreno 4xx and 5xx devices running
Android 6. For now, simply disable persistent mapping on all Adreno
devices, until we know more specifically which are affected.
Updated•4 years ago
|
Assignee | ||
Comment 7•4 years ago
|
||
Comment on attachment 9194535 [details]
Bug 1683936 - Disable persistently mapped buffers on Adreno devices.
Beta/Release Uplift Approval Request
- User impact if declined: Nothing rendered at all for users with Adreno GPUs running Android 6
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): It simply switches us to using a different texture upload path, which is well tested on other platforms and was used on these devices until 84. The code path isn't even very different, it just avoids a driver bug on these devices.
- String changes made/needed:
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Assignee | ||
Comment 8•4 years ago
|
||
A user on GitHub has tested the patch and confirmed it fixes the issue: https://github.com/mozilla-mobile/fenix/issues/17181#issuecomment-750329817
Comment 9•4 years ago
|
||
Comment on attachment 9194535 [details]
Bug 1683936 - Disable persistently mapped buffers on Adreno devices.
This sounds like it basically makes Firefox for Android unusable for affected users. Approved for Fenix 85.0.0-beta.4 and 84.1.2.
Comment 10•4 years ago
|
||
uplift |
https://hg.mozilla.org/releases/mozilla-beta/rev/a646596c24bfb065e991c7a726ce64811ace6f04
https://hg.mozilla.org/releases/mozilla-release/rev/dabba92737aced27c2de171842ce5c489671837f
Comment 11•4 years ago
|
||
bugherder |
Comment 12•4 years ago
|
||
Verified as fixed on the following builds: 84.1.2 dot RC, 85.0.0.beta4 and Focus 8.11.2 GV 84.
With the following devices: Google Pixel 4 XL (11), Samsung Galaxy S10+ (10), Nexus 4 (Android 5), Moto G (Android 10), Xiaomi Redmi Note 8T (Android 9), Nexus 5 (Android 6.0.1).
Due to very specific devices running Adreno 510, we tried to verify this bug on the closest devices we got.
I also tried with emulators, but no luck there finding one virtual device with Adreno 510.
Also, the bug was verified by the reporter on the exact device, and it works as expected!
Updated•4 years ago
|
Description
•