Skip to content
This repository has been archived by the owner on Feb 20, 2023. It is now read-only.

[Bug] Screen flickering and white fields appearing when scrolling (up/down) #16772

Closed
mahler77 opened this issue Nov 29, 2020 · 21 comments
Closed
Labels
🐞 bug Crashes, Something isn't working, .. needs:triage Issue needs triage

Comments

@mahler77
Copy link

mahler77 commented Nov 29, 2020

Steps to reproduce

During scrolling under WebRender some white fields are appearing and begin to flicker, the cursor also has issues (has gone or not writing until scrolling a screen up or down)

Expected behaviour

Smooth scrolling

Actual behaviour

See above

Device information

Honor 7

  • Android device: Honor 7, Android 6
  • Fenix version: Nightly 201127 17:01 (Build #2015778123)
    Screenshot_2020-11-29-13-12-48
    Screenshot_2020-11-29-13-13-16
    Screenshot_2020-11-29-13-13-57

┆Issue is synchronized with this Jira Task

@mahler77 mahler77 added the 🐞 bug Crashes, Something isn't working, .. label Nov 29, 2020
@github-actions github-actions bot added the needs:triage Issue needs triage label Nov 29, 2020
@mahler77 mahler77 changed the title [Bug] [Bug] Screen flickering and white fields appearing when scrolling (up/down) Nov 29, 2020
@kbrosnan
Copy link
Contributor

kbrosnan commented Dec 1, 2020

Moved to bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1680087

Change performed by the Move to Bugzilla add-on.

@kbrosnan kbrosnan closed this as completed Dec 1, 2020
@jamienicol
Copy link

Hi @mahler77, do you still experience this issue?

@mahler77
Copy link
Author

Hi @jamienicol , a much less than before. I tried, following one advice, setting in the preferences about:config gfx.webrender.force-disabled to true.

@jamienicol
Copy link

Thanks for getting back to me @mahler77 . Does "much less than before" mean that you have seen this after setting gfx.webrender.force-disabled to true? I would expect disabling webrender to fix this, as it looks like a graphics driver bug which webrender is hitting.

Would you be able to set it back to false temporarily, and check whether the issue still occurs? We made a fix for a similar looking issue on a different device, and I wonder if that has fixed this bug too.

Also, did you see this on lots of different websites, or just the one in the screenshot? Did it occur 100% reliably, or just seemingly at random? How many times a day? Sorry for all the questions, your help is much appreciated!

@jamienicol
Copy link

Hi @mahler77, sorry to bother you again. Could you please go to the URL about:support, click on "copy text to clipboard", and attach that information here? That will help me track down this issue. Thanks!

@mahler77
Copy link
Author

mahler77 commented Feb 6, 2021

Thanks for getting back to me @mahler77 . Does "much less than before" mean that you have seen this after setting gfx.webrender.force-disabled to true? I would expect disabling webrender to fix this, as it looks like a graphics driver bug which webrender is hitting.

Would you be able to set it back to false temporarily, and check whether the issue still occurs? We made a fix for a similar looking issue on a different device, and I wonder if that has fixed this bug too.

Also, did you see this on lots of different websites, or just the one in the screenshot? Did it occur 100% reliably, or just seemingly at random? How many times a day? Sorry for all the questions, your help is much appreciated!

Hi Jamie, sorry for letting you wait:

  1. Yes, afterwards.

  2. Yes, I did and it's there again. (See the screenshot)
    Screenshot_2021-02-06-10-46-21

  3. I've seen it on different websites.

  4. Sure:

Name Firefox Nightly
87.0a1
20210203093146
 
Mozilla/5.0 (Android 6.0; Mobile; rv:87.0) Gecko/87.0 Firefox/87.0
Linux 23 #2 SMP PREEMPT Tue Nov 14 05:45:52 CST 2017
0/0
0/0 Disabled by default
1
Found
Found
Found
false

@jamienicol
Copy link

Thanks! Unfortunately that isn't the full about:support information, it should be quite a few pages long. Did you use the button to copy it to the clipboard?

One more thing you could try, with webrender enabled also set the pref gfx.webrender.max-partial-present-rects to 0. (it should be 1 by default). Then restart and see if the bug is still there? Thanks again.

@mahler77
Copy link
Author

mahler77 commented Feb 6, 2021

{
"application": {
"name": "Firefox Nightly",
"osVersion": "Linux 23 #2 SMP PREEMPT Tue Nov 14 05:45:52 CST 2017",
"version": "87.0a1",
"buildID": "20210203093146",
"distributionID": "",
"userAgent": "Mozilla/5.0 (Android 6.0; Mobile; rv:87.0) Gecko/87.0 Firefox/87.0",
"safeMode": false,
"supportURL": "https://support.mozilla.org/1/mobile/87.0a1/Android/de/",
"numTotalWindows": 0,
"numFissionWindows": 0,
"numRemoteWindows": 0,
"fissionAutoStart": false,
"fissionDecisionStatus": "disabledByDefault",
"remoteAutoStart": true,
"keyLocationServiceGoogleFound": true,
"keySafebrowsingGoogleFound": true,
"keyMozillaFound": true
},
"securitySoftware": {
"registeredAntiVirus": "",
"registeredAntiSpyware": "",
"registeredFirewall": ""
},
"processes": {
"remoteTypes": {
"web": 1
},
"maxWebContentProcesses": 3
},
"environmentVariables": {},
"modifiedPreferences": {
"dom.presentation.device.name": "PLK-L01",
"extensions.lastAppVersion": "87.0a1",
"media.gmp.storage.version.observed": 1,
"network.trr.blocklist_cleanup_done": true,
"security.remote_settings.crlite_filters.checked": 1612604674,
"security.remote_settings.intermediates.checked": 1612604674
},
"lockedPreferences": {
"fission.autostart.session": false
},
"printingPreferences": {},
"media": {
"currentAudioBackend": "opensl",
"currentMaxAudioChannels": 2,
"currentPreferredSampleRate": 48000,
"audioOutputDevices": [
{
"name": "Default audio output device",
"groupId": "",
"vendor": "",
"type": 2,
"state": 2,
"preferred": 15,
"supportedFormat": 12336,
"defaultFormat": 16,
"maxChannels": 2,
"defaultRate": 44100,
"maxRate": 44100,
"minRate": 44100,
"maxLatency": 441,
"minLatency": 128
}
],
"audioInputDevices": [
{
"name": "Default audio input device",
"groupId": "",
"vendor": "",
"type": 1,
"state": 2,
"preferred": 15,
"supportedFormat": 12336,
"defaultFormat": 16,
"maxChannels": 1,
"defaultRate": 44100,
"maxRate": 44100,
"minRate": 44100,
"maxLatency": 441,
"minLatency": 128
}
]
},
"accessibility": {
"isActive": false,
"forceDisabled": 0,
"handlerUsed": false,
"instantiator": ""
},
"startupCache": {
"DiskCachePath": "/data/user/0/org.mozilla.fenix/files/mozilla/kzve95yn.default/startupCache/startupCache.8.little",
"IgnoreDiskCache": false,
"FoundDiskCacheOnInit": true,
"WroteToDiskCache": false
},
"libraryVersions": {
"NSPR": {
"minVersion": "4.29",
"version": "4.29"
},
"NSS": {
"minVersion": "3.62 Beta",
"version": "3.62 Beta"
},
"NSSUTIL": {
"minVersion": "3.62 Beta",
"version": "3.62 Beta"
},
"NSSSSL": {
"minVersion": "3.62 Beta",
"version": "3.62 Beta"
},
"NSSSMIME": {
"minVersion": "3.62 Beta",
"version": "3.62 Beta"
}
},
"userJS": {
"exists": false
},
"intl": {
"localeService": {
"requested": [
"de-AT"
],
"available": [
"an",
"ar",
"ast",
"az",
"be",
"bg",
"bn",
"br",
"bs",
"ca",
"cak",
"cs",
"cy",
"da",
"de",
"dsb",
"el",
"en-CA",
"en-GB",
"en-US",
"eo",
"es-AR",
"es-CL",
"es-ES",
"es-MX",
"et",
"eu",
"fa",
"ff",
"fi",
"fr",
"fy-NL",
"ga-IE",
"gd",
"gl",
"gn",
"gu-IN",
"he",
"hi-IN",
"hr",
"hsb",
"hu",
"hy-AM",
"id",
"is",
"it",
"ja",
"ka",
"kab",
"kk",
"kn",
"ko",
"lij",
"lo",
"lt",
"lv",
"ml",
"mr",
"ms",
"my",
"nb-NO",
"ne-NP",
"nl",
"nn-NO",
"oc",
"pa-IN",
"pl",
"pt-BR",
"pt-PT",
"rm",
"ro",
"ru",
"sk",
"sl",
"son",
"sq",
"sr",
"sv-SE",
"ta",
"te",
"th",
"tr",
"trs",
"uk",
"ur",
"uz",
"vi",
"wo",
"xh",
"zam",
"zh-CN",
"zh-TW"
],
"supported": [
"de",
"en-US"
],
"regionalPrefs": [
"de-AT"
],
"defaultLocale": "en-US"
},
"osPrefs": {
"systemLocales": [
"de-AT"
],
"regionalPrefsLocales": [
"de-AT"
]
}
},
"crashes": {
"submitted": [],
"pending": 0
},
"graphics": {
"numTotalWindows": 2,
"numAcceleratedWindows": 2,
"windowLayerManagerType": "WebRender",
"windowLayerManagerRemote": true,
"windowUsingAdvancedLayers": false,
"adapterDescription": "Model: PLK-L01, Product: PLK-L01, Manufacturer: HUAWEI, Hardware: hi3635, OpenGL: ARM -- Mali-T624 -- OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201ea91f87ad24a89593523d2",
"adapterVendorID": "ARM",
"adapterDeviceID": "Mali-T624",
"adapterRAM": 0,
"adapterDrivers": "",
"driverVendor": "",
"driverVersion": "OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201ea91f87ad24a89593523d2",
"driverDate": "",
"usesTiling": true,
"contentUsesTiling": true,
"offMainThreadPaintEnabled": false,
"offMainThreadPaintWorkerCount": 0,
"targetFrameRate": 60,
"webgl1Renderer": "ARM -- Mali-T624",
"webgl1Version": "OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201ea91f87ad24a89593523d2",
"webgl1DriverExtensions": "GL_EXT_debug_marker GL_ARM_rgba8 GL_ARM_mali_shader_binary GL_OES_depth24 GL_OES_depth_texture GL_OES_depth_texture_cube_map GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_EXT_read_format_bgra GL_OES_compressed_paletted_texture GL_OES_compressed_ETC1_RGB8_texture GL_OES_standard_derivatives GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_sync GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_required_internalformat GL_OES_vertex_array_object GL_OES_mapbuffer GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_type_2_10_10_10_REV GL_OES_fbo_render_mipmap GL_OES_element_index_uint GL_OES_texture_compression_astc GL_KHR_texture_compression_astc_ldr GL_KHR_texture_compression_astc_hdr GL_KHR_debug GL_EXT_occlusion_query_boolean GL_EXT_disjoint_timer_query GL_EXT_blend_minmax GL_EXT_discard_framebuffer GL_OES_get_program_binary GL_OES_texture_3D GL_EXT_texture_storage GL_EXT_multisampled_render_to_texture GL_OES_surfaceless_context GL_OES_texture_stencil8 GL_EXT_shader_pixel_local_storage GL_ARM_shader_framebuffer_fetch GL_ARM_shader_framebuffer_fetch_depth_stencil GL_ARM_mali_program_binary GL_EXT_sRGB GL_EXT_sRGB_write_control GL_EXT_texture_sRGB_decode GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent GL_OES_texture_storage_multisample_2d_array GL_OES_shader_image_atomic GL_EXT_robustness GL_EXT_texture_border_clamp GL_OES_texture_border_clamp GL_EXT_texture_cube_map_array GL_OES_texture_cube_map_array GL_OES_sample_variables GL_OES_sample_shading GL_OES_shader_multisample_interpolation GL_EXT_shader_io_blocks GL_OES_shader_io_blocks GL_EXT_gpu_shader5 GL_OES_gpu_shader5 GL_EXT_texture_buffer GL_OES_texture_buffer GL_EXT_copy_image GL_OES_copy_image ",
"webgl1Extensions": "ANGLE_instanced_arrays EXT_blend_minmax EXT_sRGB MOZ_debug OES_element_index_uint OES_fbo_render_mipmap OES_standard_derivatives OES_texture_float OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_lose_context",
"webgl1WSIInfo": "EGL_VENDOR: ARM\nEGL_VERSION: 1.4 Midgard-"r8p0-02rel0"\nEGL_EXTENSIONS: EGL_ANDROID_image_native_buffer EGL_ANDROID_recordable EGL_ANDROID_native_fence_sync EGL_ANDROID_framebuffer_target EGL_ANDROID_blob_cache EGL_KHR_partial_update EGL_KHR_config_attribs EGL_KHR_image EGL_KHR_image_base EGL_KHR_fence_sync EGL_KHR_wait_sync EGL_KHR_gl_colorspace EGL_KHR_get_all_proc_addresses EGL_IMG_context_priority EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_create_context EGL_KHR_surfaceless_context EGL_KHR_gl_texture_cubemap_image EGL_EXT_create_context_robustness EGL_KHR_cl_event2\nIsWebglOutOfProcessEnabled: 0",
"webgl2Renderer": "ARM -- Mali-T624",
"webgl2Version": "OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201ea91f87ad24a89593523d2",
"webgl2DriverExtensions": "GL_EXT_debug_marker GL_ARM_rgba8 GL_ARM_mali_shader_binary GL_OES_depth24 GL_OES_depth_texture GL_OES_depth_texture_cube_map GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_EXT_read_format_bgra GL_OES_compressed_paletted_texture GL_OES_compressed_ETC1_RGB8_texture GL_OES_standard_derivatives GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_sync GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_required_internalformat GL_OES_vertex_array_object GL_OES_mapbuffer GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_type_2_10_10_10_REV GL_OES_fbo_render_mipmap GL_OES_element_index_uint GL_OES_texture_compression_astc GL_KHR_texture_compression_astc_ldr GL_KHR_texture_compression_astc_hdr GL_KHR_debug GL_EXT_occlusion_query_boolean GL_EXT_disjoint_timer_query GL_EXT_blend_minmax GL_EXT_discard_framebuffer GL_OES_get_program_binary GL_OES_texture_3D GL_EXT_texture_storage GL_EXT_multisampled_render_to_texture GL_OES_surfaceless_context GL_OES_texture_stencil8 GL_EXT_shader_pixel_local_storage GL_ARM_shader_framebuffer_fetch GL_ARM_shader_framebuffer_fetch_depth_stencil GL_ARM_mali_program_binary GL_EXT_sRGB GL_EXT_sRGB_write_control GL_EXT_texture_sRGB_decode GL_KHR_blend_equation_advanced GL_KHR_blend_equation_advanced_coherent GL_OES_texture_storage_multisample_2d_array GL_OES_shader_image_atomic GL_EXT_robustness GL_EXT_texture_border_clamp GL_OES_texture_border_clamp GL_EXT_texture_cube_map_array GL_OES_texture_cube_map_array GL_OES_sample_variables GL_OES_sample_shading GL_OES_shader_multisample_interpolation GL_EXT_shader_io_blocks GL_OES_shader_io_blocks GL_EXT_gpu_shader5 GL_OES_gpu_shader5 GL_EXT_texture_buffer GL_OES_texture_buffer GL_EXT_copy_image GL_OES_copy_image ",
"webgl2Extensions": "MOZ_debug WEBGL_compressed_texture_astc WEBGL_compressed_texture_etc WEBGL_compressed_texture_etc1 WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context",
"webgl2WSIInfo": "EGL_VENDOR: ARM\nEGL_VERSION: 1.4 Midgard-"r8p0-02rel0"\nEGL_EXTENSIONS: EGL_ANDROID_image_native_buffer EGL_ANDROID_recordable EGL_ANDROID_native_fence_sync EGL_ANDROID_framebuffer_target EGL_ANDROID_blob_cache EGL_KHR_partial_update EGL_KHR_config_attribs EGL_KHR_image EGL_KHR_image_base EGL_KHR_fence_sync EGL_KHR_wait_sync EGL_KHR_gl_colorspace EGL_KHR_get_all_proc_addresses EGL_IMG_context_priority EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_create_context EGL_KHR_surfaceless_context EGL_KHR_gl_texture_cubemap_image EGL_EXT_create_context_robustness EGL_KHR_cl_event2\nIsWebglOutOfProcessEnabled: 0",
"info": {
"AzureCanvasBackend": "skia",
"AzureFallbackCanvasBackend": "none",
"AzureContentBackend": "skia",
"ApzTouchInput": 1,
"ApzAutoscrollInput": 1,
"ApzZoomingInput": 1,
"TileHeight": 512,
"TileWidth": 512,
"CMSOutputProfile": "Empty profile data",
"DisplayCount": 1,
"Display0": "1080x1920"
},
"featureLog": {
"features": [
{
"name": "HW_COMPOSITING",
"description": "Compositing",
"status": "force_enabled",
"log": [
{
"type": "default",
"status": "available"
},
{
"type": "user",
"status": "force_enabled",
"message": "Force-enabled by pref"
}
]
},
{
"name": "OPENGL_COMPOSITING",
"description": "OpenGL Compositing",
"status": "force_enabled",
"log": [
{
"type": "default",
"status": "available"
},
{
"type": "user",
"status": "force_enabled",
"message": "Force-enabled by pref"
}
]
},
{
"name": "WEBRENDER",
"description": "WebRender",
"status": "available",
"log": [
{
"type": "default",
"status": "available"
}
]
},
{
"name": "WEBRENDER_QUALIFIED",
"description": "WebRender qualified",
"status": "available",
"log": [
{
"type": "default",
"status": "available"
}
]
},
{
"name": "WEBRENDER_COMPOSITOR",
"description": "WebRender native compositor",
"status": "disabled",
"log": [
{
"type": "default",
"status": "disabled",
"message": "Disabled by default"
}
]
},
{
"name": "WEBRENDER_PARTIAL",
"description": "WebRender partial present",
"status": "available",
"log": [
{
"type": "default",
"status": "available"
}
]
},
{
"name": "WEBRENDER_ANGLE",
"description": "WebRender ANGLE",
"status": "unavailable",
"log": [
{
"type": "default",
"status": "available"
},
{
"type": "env",
"status": "unavailable",
"message": "OS not supported"
}
]
},
{
"name": "WEBRENDER_DCOMP_PRESENT",
"description": "WebRender DirectComposition",
"status": "unavailable",
"log": [
{
"type": "default",
"status": "available"
},
{
"type": "user",
"status": "disabled",
"message": "User disabled via pref"
},
{
"type": "env",
"status": "unavailable",
"message": "Requires Windows 10 or later"
},
{
"type": "runtime",
"status": "unavailable",
"message": "Requires ANGLE"
}
]
},
{
"name": "WEBRENDER_SOFTWARE",
"description": "WebRender software fallback",
"status": "denied",
"log": [
{
"type": "default",
"status": "available"
},
{
"type": "env",
"status": "denied",
"message": "Not on allowlist"
}
]
},
{
"name": "OMTP",
"description": "Off Main Thread Painting",
"status": "disabled",
"log": [
{
"type": "default",
"status": "disabled",
"message": "Disabled by default"
}
]
},
{
"name": "WEBGPU",
"description": "WebGPU",
"status": "disabled",
"log": [
{
"type": "default",
"status": "disabled",
"message": "Disabled by default"
}
]
}
],
"fallbacks": []
},
"crashGuards": []
},
"addons": [
{
"name": "Mozilla Android Components - Ads",
"type": "extension",
"version": "73.0.20210205154357.0205180056",
"isActive": true,
"id": "ads@mozac.org"
},
{
"name": "Mozilla Android Components - Browser Icons",
"type": "extension",
"version": "73.0.20210205154357.0205155530",
"isActive": true,
"id": "icons@mozac.org"
},
{
"name": "Mozilla Android Components - Cookies",
"type": "extension",
"version": "73.0.20210205154357.0205180056",
"isActive": true,
"id": "cookies@mozac.org"
},
{
"name": "Mozilla Android Components - Firefox Accounts WebChannel",
"type": "extension",
"version": "73.0.20210205154357.0205155529",
"isActive": true,
"id": "fxa@mozac.org"
},
{
"name": "Mozilla Android Components - ReaderView",
"type": "extension",
"version": "73.0.20210205154357.0205155236",
"isActive": true,
"id": "readerview@mozac.org"
},
{
"name": "Mozilla Android Components - Web Compatibility Interventions",
"type": "extension",
"version": "19.0.0",
"isActive": true,
"id": "webcompat@mozilla.org"
},
{
"name": "Mozilla Android Components - WebCompat Reporter",
"type": "extension",
"version": "2.0.0",
"isActive": true,
"id": "webcompat-reporter@mozilla.org"
}
],
"features": []
}

@mahler77
Copy link
Author

mahler77 commented Feb 6, 2021

Here is the raw text.
The lower button gives always the same result as above.

I set all the triggers as you asked to and the bug is not appearing.

@jamienicol
Copy link

Thanks, that's great.

So to confirm: gfx.webrender.force-disabled = false and gfx.webrender.max-partial-present-rects = 0 works correctly without any bug? And if you go to about:support and search for "Compositing", it says "WebRender" and not "OpenGL"?

If so, then that's great news. I will disable the partial present feature on your GPU to work around the driver bug.

@mahler77
Copy link
Author

mahler77 commented Feb 8, 2021

Well, no,
at gfx.webrender.force-disabled it's true. Compositing is WebRender, yes.

I was also facing the issue that the letters won't follow the cursor at searching field at about:config.

@jamienicol
Copy link

Do you mean the letters don't appear after typing?

Is that still happening, or was it fixed by changing the config?

@mahler77
Copy link
Author

mahler77 commented Feb 8, 2021

Exactly, they don't appear after typing and it wasn't fixed after changing the config.

@jamienicol
Copy link

But the original issue is fixed after changing the config? Did you restart Firefox after changing it? (By swiping it away in the app switcher)

@mahler77
Copy link
Author

mahler77 commented Feb 8, 2021

Sorry, you are right, I didn't start FF properly after that.
Yes, the original issue is fixed with "true" and "0"

@jamienicol
Copy link

jamienicol commented Feb 8, 2021

What does "compositing" say in about:support now? Can you try again with gfx.webrender.force-disabled false? And keep max-partial-present-rects 0. (And make sure to restart after changing the values)

@mahler77
Copy link
Author

mahler77 commented Feb 8, 2021

Compositing says now OpenGL.
Force-disabled to false, no issues.

@jamienicol
Copy link

After switching forced-disabled to false and restarting, compositing should say webrender again? Still no issues?

@mahler77
Copy link
Author

mahler77 commented Feb 8, 2021

Correct. WebRender again and no issues.

@jamienicol
Copy link

That's brilliant. Thank you very much for your help testing this!

@mahler77
Copy link
Author

mahler77 commented Feb 8, 2021

Very glad that I could help!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
🐞 bug Crashes, Something isn't working, .. needs:triage Issue needs triage
Projects
None yet
Development

No branches or pull requests

3 participants