Closed Bug 1586929 Opened 5 years ago Closed 2 years ago

Fullscreen video vsync broken on g-sync capable monitors when enabled in nvidia control panel

Categories

(Core :: Graphics: WebRender, defect, P3)

70 Branch
Desktop
Windows
defect

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: kael, Unassigned)

References

(Blocks 2 open bugs)

Details

(Keywords: regression)

Attachments

(3 files)

For the past few weeks I've been noticing that fullscreen youtube videos don't have working vsync on my secondary monitor. If I move the FF window to my primary monitor, fullscreen has vsync there.

Not sure if non-fullscreen videos have vsync, it's harder to tell. I've seen this with both 60fps and 30fps videos.

Application Basics

Name: Firefox
Version: 70.0b12
Build ID: 20191002212950
Update Channel: aurora
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:70.0) Gecko/20100101 Firefox/70.0
OS: Windows_NT 10.0
Launcher Process: Enabled
Multiprocess Windows: 3/3 Enabled by default
Remote Processes: 10
Enterprise Policies: Inactive
Google Location Service Key: Found
Google Safebrowsing Key: Found
Mozilla Location Service Key: Found
Safe Mode: false

Crash Reports for the Last 3 Days

Firefox Developer Edition Features

Name: Firefox Screenshots
Version: 39.0.0
ID: screenshots@mozilla.org

Name: Form Autofill
Version: 1.0
ID: formautofill@mozilla.org

Name: Web Compat
Version: 6.1.0
ID: webcompat@mozilla.org

Name: WebCompat Reporter
Version: 1.1.0
ID: webcompat-reporter@mozilla.org

Remote Processes

Type: Web Content
Count: 8 / 8

Type: Extension
Count: 1

Type: GPU
Count: 1

Extensions

Name: Amazon.com
Version: 1.1
Enabled: true
ID: amazondotcom@search.mozilla.org

Name: Bing
Version: 1.0
Enabled: true
ID: bing@search.mozilla.org

Name: DuckDuckGo
Version: 1.0
Enabled: true
ID: ddg@search.mozilla.org

Name: eBay
Version: 1.0
Enabled: true
ID: ebay@search.mozilla.org

Name: Firefox Color
Version: 2.1.5
Enabled: true
ID: FirefoxColor@mozilla.com

Name: Gecko Profiler
Version: 0.30
Enabled: true
ID: geckoprofiler@mozilla.com

Name: Google
Version: 1.0
Enabled: true
ID: google@search.mozilla.org

Name: Image Search Options
Version: 3.0.12
Enabled: true
ID: {4a313247-8330-4a81-948e-b79936516f78}

Name: Owl - For comfortable reading
Version: 2.2.7
Enabled: true
ID: @owl-comfortable-reading-addon

Name: Twitter
Version: 1.0
Enabled: true
ID: twitter@search.mozilla.org

Name: uBlock Origin
Version: 1.22.4
Enabled: true
ID: uBlock0@raymondhill.net

Name: User-Agent Switcher
Version: 1.3.12
Enabled: true
ID: user-agent-switcher@ninetailed.ninja

Name: Wikipedia (en)
Version: 1.0
Enabled: true
ID: wikipedia@search.mozilla.org

Name: Firefox Multi-Account Containers
Version: 6.1.1
Enabled: false
ID: @testpilot-containers

Name: geckoprofiler
Version: 1.16.25
Enabled: false
ID: jid0-edalmuivkozlouyij0lpdx548bc@jetpack

Name: Media Panel
Version: 2.6
Enabled: false
ID: {68d048f4-9449-4c97-8425-6dac7f743b14}

Name: Rikaichan
Version: 3.02b1
Enabled: false
ID: {0AA9101C-D3C1-4129-A9B7-D778C6A17F82}

Name: Test Pilot
Version: 3.0.6vffecb95
Enabled: false
ID: @testpilot-addon

Name: Twitter Block Chain
Version: 1.8.3
Enabled: false
ID: twitterblockchain@satsuki.tv

Name: U2F Support Add-on
Version: 1.0.1
Enabled: false
ID: u2f4moz@prefiks.org

Name: User Agent Switcher
Version: 0.7.3.1-signed.1-signed
Enabled: false
ID: {e968fc70-8f95-4ab9-9e79-304de2a71ee1}

Name: YouTube Classic
Version: 1.4.1
Enabled: false
ID: {6acd0f4d-ab79-4b79-9b28-8bde65ae355c}

Security Software

Type:

Type:

Type:

Graphics

Features
Compositing: WebRender
Asynchronous Pan/Zoom: wheel input enabled; scrollbar drag enabled; keyboard enabled; autoscroll enabled
WebGL 1 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 0000000000009d26) EGL_VERSION: 1.4 (ANGLE 2.1.0.21dccd386996) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_CHROMIUM_sync_control EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_ANGLE_robust_resource_initialization EGL_ANGLE_create_context_extensions_enabled EGL_ANDROID_blob_cache EGL_ANDROID_recordable EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses EGL_KHR_debug EGL_ANGLE_explicit_context
WebGL 1 Driver Renderer: Google Inc. -- ANGLE (NVIDIA GeForce RTX 2080 Ti Direct3D11 vs_5_0 ps_5_0)
WebGL 1 Driver Version: OpenGL ES 2.0 (ANGLE 2.1.0.21dccd386996)
WebGL 1 Driver Extensions: GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_explicit_context GL_ANGLE_explicit_context_gles1 GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_memory_size GL_ANGLE_multi_draw GL_ANGLE_multiview_multisample GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control GL_ANGLE_provoking_vertex GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_func_extended GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_float_blend GL_EXT_frag_depth GL_EXT_instanced_arrays GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_bptc GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_KHR_parallel_shader_compile GL_KHR_robust_buffer_access_behavior GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_border_clamp GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object OES_compressed_EAC_R11_signed_texture OES_compressed_EAC_R11_unsigned_texture OES_compressed_EAC_RG11_signed_texture OES_compressed_EAC_RG11_unsigned_texture OES_compressed_ETC2_RGB8_texture OES_compressed_ETC2_RGBA8_texture OES_compressed_ETC2_punchthroughA_RGBA8_texture OES_compressed_ETC2_punchthroughA_sRGB8_alpha_texture OES_compressed_ETC2_sRGB8_alpha8_texture OES_compressed_ETC2_sRGB8_texture
WebGL 1 Extensions: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_disjoint_timer_query EXT_float_blend EXT_frag_depth EXT_shader_texture_lod EXT_sRGB EXT_texture_compression_bptc EXT_texture_filter_anisotropic OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context
WebGL 2 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 0000000000009d26) EGL_VERSION: 1.4 (ANGLE 2.1.0.21dccd386996) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_CHROMIUM_sync_control EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_ANGLE_robust_resource_initialization EGL_ANGLE_create_context_extensions_enabled EGL_ANDROID_blob_cache EGL_ANDROID_recordable EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses EGL_KHR_debug EGL_ANGLE_explicit_context
WebGL 2 Driver Renderer: Google Inc. -- ANGLE (NVIDIA GeForce RTX 2080 Ti Direct3D11 vs_5_0 ps_5_0)
WebGL 2 Driver Version: OpenGL ES 3.0 (ANGLE 2.1.0.21dccd386996)
WebGL 2 Driver Extensions: GL_ANGLE_client_arrays GL_ANGLE_copy_texture_3d GL_ANGLE_depth_texture GL_ANGLE_explicit_context GL_ANGLE_explicit_context_gles1 GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_memory_size GL_ANGLE_multi_draw GL_ANGLE_multiview_multisample GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control GL_ANGLE_provoking_vertex GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_multisample GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_func_extended GL_EXT_blend_minmax GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_float_blend GL_EXT_frag_depth GL_EXT_instanced_arrays GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_bptc GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_norm16 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_KHR_parallel_shader_compile GL_KHR_robust_buffer_access_behavior GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_image_external_essl3 GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_border_clamp GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object GL_OVR_multiview2 OES_compressed_EAC_R11_signed_texture OES_compressed_EAC_R11_unsigned_texture OES_compressed_EAC_RG11_signed_texture OES_compressed_EAC_RG11_unsigned_texture OES_compressed_ETC2_RGB8_texture OES_compressed_ETC2_RGBA8_texture OES_compressed_ETC2_punchthroughA_RGBA8_texture OES_compressed_ETC2_punchthroughA_sRGB8_alpha_texture OES_compressed_ETC2_sRGB8_alpha8_texture OES_compressed_ETC2_sRGB8_texture
WebGL 2 Extensions: EXT_color_buffer_float EXT_disjoint_timer_query EXT_float_blend EXT_texture_compression_bptc EXT_texture_filter_anisotropic OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context
Direct2D: true
Uses Tiling (Content): true
Off Main Thread Painting Enabled: true
Off Main Thread Painting Worker Count: 4
Target Frame Rate: 60
DirectWrite: true (10.0.18362.356)
GPU #1
Active: Yes
Description: NVIDIA GeForce RTX 2080 Ti
Vendor ID: 0x10de
Device ID: 0x1e04
Driver Version: 26.21.14.3648
Driver Date: 9-26-2019
Drivers: C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumdx.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumdx.dll C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumd.dll,C:\WINDOWS\System32\DriverStore\FileRepository\nv_dispi.inf_amd64_827405c7c65146ab\nvldumd.dll
Subsys ID: 22813842
RAM: 11264

Diagnostics
AzureCanvasBackend: direct2d 1.1
AzureCanvasBackend (UI Process): skia
AzureContentBackend: skia
AzureContentBackend (UI Process): skia
AzureFallbackCanvasBackend (UI Process): none
GPUProcessPid: 9580
GPUProcess: Terminate GPU Process
Device Reset: Trigger Device Reset
ClearType Parameters: \.\DISPLAY1 [ Gamma: 1.8 Pixel Structure: RGB ClearType Level: 100 Enhanced Contrast: 50 ] \.\DISPLAY2 [ Gamma: 1.8 Pixel Structure: RGB ClearType Level: 100 Enhanced Contrast: 50 ]
Decision Log
WEBRENDER:
opt-in by default: WebRender is an opt-in feature
available by user: Force enabled by pref

Important Modified Preferences

accessibility.typeaheadfind.flashBar: 0
browser.cache.disk.amount_written: 745469
browser.cache.disk.capacity: 1048576
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.hashstats_reported: 1
browser.cache.disk.smart_size.first_run: false
browser.cache.disk.smart_size.use_old_max: false
browser.cache.disk.telemetry_report_ID: 185
browser.cache.frecency_experiment: 4
browser.download.folderList: 2
browser.fixup.domainwhitelist.firehomie: true
browser.fixup.domainwhitelist.rv325: true
browser.places.smartBookmarksVersion: 8
browser.sessionstore.upgradeBackup.latestBuildID: 20191002212950
browser.startup.homepage_override.buildID: 20191002212950
browser.startup.homepage_override.mstone: 70.0
browser.tabs.crashReporting.includeURL: true
browser.tabs.remote.autostart.2: false
browser.tabs.warnOnClose: false
browser.tabs.warnOnOpen: false
browser.urlbar.matchBuckets: general:5,suggestion:Infinity
browser.urlbar.placeholderName: Google
browser.urlbar.searchSuggestionsChoice: true
browser.urlbar.userMadeSearchSuggestionsChoice: true
dom.apps.lastUpdate.buildID: 20160916101415
dom.apps.lastUpdate.mstone: 49.0
dom.apps.reset-permissions: true
dom.forms.autocomplete.formautofill: true
dom.max_script_run_time: 0
dom.mozApps.used: true
dom.push.userAgentID: cd692d1efcf44c95a328e69fd4638d7c
extensions.formautofill.creditCards.used: 3
extensions.formautofill.firstTimeUse: false
extensions.lastAppVersion: 70.0
font.internaluseonly.changed: false
font.name.monospace.x-western: Consolas
font.name.sans-serif.x-western: Calibri
font.name.serif.x-western: Cambria
font.size.fixed.x-western: 15
font.size.variable.x-western: 18
gfx.crash-guard.d3d11layers.appVersion: 68.0
gfx.crash-guard.d3d11layers.feature-d2d: false
gfx.crash-guard.d3d11layers.feature-d3d11: false
gfx.crash-guard.status.d3d11layers: 2
gfx.crash-guard.status.wmfvpxvideo: 2
gfx.crash-guard.wmfvpxvideo.appVersion: 70.0
gfx.crash-guard.wmfvpxvideo.deviceID: 0x1e04
gfx.crash-guard.wmfvpxvideo.driverVersion: 26.21.14.3648
gfx.font_rendering.cleartype_params.cleartype_level: 35
gfx.font_rendering.cleartype_params.enhanced_contrast: 45
gfx.font_rendering.cleartype_params.force_gdi_classic_for_families:
gfx.font_rendering.cleartype_params.gamma: 1425
gfx.font_rendering.cleartype_params.rendering_mode: 5
gfx.font_rendering.directwrite.enabled: true
gfx.webrender.all: true
gfx.webrender.all.qualified: true
gfx.webrender.enable: true
gfx.webrender.enabled: true
idle.lastDailyNotification: 1570484721
layers.mlgpu.sanity-test-failed: false
media.benchmark.vp9.fps: 300
media.benchmark.vp9.versioncheck: 5
media.gmp-eme-adobe.abi: x86_64-msvc-x64
media.gmp-eme-adobe.lastUpdate: 1456263116
media.gmp-eme-adobe.version: 17
media.gmp-gmpopenh264.abi: x86_64-msvc-x64
media.gmp-gmpopenh264.lastUpdate: 1553716927
media.gmp-gmpopenh264.version: 1.8.1
media.gmp-manager.buildID: 20191002212950
media.gmp-manager.lastCheck: 1570385113
media.gmp-widevinecdm.abi: x86_64-msvc-x64
media.gmp-widevinecdm.lastUpdate: 1565740532
media.gmp-widevinecdm.version: 4.10.1440.19
media.gmp.storage.version.observed: 1
media.hardware-video-decoding.failed: false
network.cookie.prefsMigrated: true
network.dns.disablePrefetch: true
network.http.speculative-parallel-limit: 0
network.predictor.cleaned-up: true
network.predictor.enabled: false
network.prefetch-next: false
places.database.lastMaintenance: 1570127809
places.history.expiration.transient_current_max_pages: 153003
plugin.disable_full_page_plugin_for_types: application/pdf
plugin.importedState: true
plugin.state.npctrl: 2
plugin.state.npgoogleupdate: 0
plugin.state.npnv3dv: 0
plugin.state.npnv3dvstreaming: 0
plugin.state.npunity3d: 1
privacy.cpd.cookies: false
privacy.cpd.downloads: false
privacy.cpd.formdata: false
privacy.cpd.history: false
privacy.cpd.sessions: false
privacy.donottrackheader.enabled: true
privacy.sanitize.migrateClearSavedPwdsOnExit: true
privacy.sanitize.migrateFx3Prefs: true
privacy.sanitize.pending: [{"id":"newtab-container","itemsToClear":[],"options":{}}]
privacy.sanitize.timeSpan: 0
privacy.socialtracking.notification.counter: 2
privacy.socialtracking.notification.lastShown: 1567125695426
privacy.trackingprotection.introCount: 20
security.disable_button.openCertManager: false
security.remote_settings.intermediates.checked: 1559562507
security.sandbox.content.tempDirSuffix: {798b84da-142a-4a56-bf4a-aecef54f996a}
security.sandbox.plugin.tempDirSuffix: {f53dd3be-7b47-44d8-bee8-0c8e05221e1b}
security.ssl.errorReporting.automatic: true
services.sync.declinedEngines: prefs
services.sync.engine.addons: false
services.sync.engine.addresses.available: true
services.sync.engine.bookmarks.validation.lastTime: 1568940800
services.sync.engine.greasemonkey: true
services.sync.engine.passwords.validation.lastTime: 1568940800
services.sync.engine.prefs: false
services.sync.engine.prefs.modified: false
services.sync.engine.userStyles: true
services.sync.lastPing: 1570476768
services.sync.lastSync: Mon Oct 07 2019 14:45:23 GMT-0700 (Pacific Daylight Time)
services.sync.numClients: 3
signon.importedFromSqlite: true
storage.vacuum.last.index: 1
storage.vacuum.last.places.sqlite: 1568953223
ui.osk.debug.keyboardDisplayReason: IKPOS: Touch screen not found.

Important Locked Preferences

Places Database

JavaScript

Incremental GC: true

Accessibility

Activated: false
Prevent Accessibility: 0
Accessible Handler Used: true
Accessibility Instantiator:

Sandbox

Content Process Sandbox Level: 5
Effective Content Process Sandbox Level: 5

Thanks for the report and the detailed info, at first glance this seems like an issue related to Web Render, does it repro without (about:config, gfx.webrender.all to false)?

It's probable that with a 2080Ti, on a desktop, it is enabled automatically, in which case it's much more serious, but you seem to also have force-enabled it? If this has happened "for a few weeks" it might coincide with the point in time your configuration started to be qualified for Web Render, and/or a new beta started, or maybe Web Render was enabled all along because you had it force-enabled, and so that would just be a Web Render regression, instead of a regression caused by enabling Web Render.

To try to nail this one down, I tried to prepare a page that has a full-height/width video (but not fullscreen) that is a bit shaky so it's a bit easier (hopefully) to determine whether or no it's tearing also in non-fullscreen: https://paul.cx/public/video-tearing.html

Is this specific to video rendering, or does this happen with regular content as well? Maybe hard to tell, but that would help. Scrolling with the mouse vs. the keyboard can also maybe be a factor (this can change the scrolling method, this is being fixed or has been fixed recently, but I'm sure where we're at).

Sotaro, I'm told you've been tweaking a few things related to the presentation paths on Windows recently, can you have a look?

Flags: needinfo?(sotaro.ikeda.g)
Flags: needinfo?(kg)

Just tested again to make sure: I don't get any tearing when watching a video outside fullscreen on either monitor, or in fullscreen on monitor A. On monitor B if I enter fullscreen it tears. I can confirm with your tearing test page as well that I only saw tearing in fullscreen.

I realized I actually switched which monitor is primary recently so the one with tearing is actually the primary monitor right now... I'm going to test and see if that has any impact on it.

I haven't seen any tearing in non-video content, but I don't do any browsing in fullscreen mode. I usually scroll with the mouse and have had no problems there.

Flags: needinfo?(kg)

I cleared that pref and restarted and WR is still enabled. Still tears.
For the sake of completeness I also switched my PC's primary monitor and restarted - the same monitor (my ultrawide) is still the one with tearing. So it could have something to do with aspect ratio, or with which monitor is physically first in the enumeration order - as far as I can tell the ultrawide is monitor #2 in the registry etc.

(In reply to K. Gadd (:kael) from comment #4)

I cleared that pref and restarted and WR is still enabled. Still tears.

WebRender can be forcibly disabled by pref gfx.webrender.force-disabled : true.

Restarting after force-disabled=true eliminates the tearing on fullscreen video (confirmed it works correctly on both monitors)

(In reply to K. Gadd (:kael) from comment #6)

Restarting after force-disabled=true eliminates the tearing on fullscreen video (confirmed it works correctly on both monitors)

From it, DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL SwapChain usage or DirectComposition usage might be related to triggering the problem.

(In reply to Paul Adenot (:padenot) from comment #2)

Sotaro, I'm told you've been tweaking a few things related to the presentation paths on Windows recently, can you have a look?

The recent changes seemed not to cause the tearing. Basically rendering to D3D should not cause the tearing. From it, it might be a problem of GPU driver.

Flags: needinfo?(sotaro.ikeda.g)

Both of these panels are g-sync compatible and I have it enabled on the monitor that tears, so that could be a factor. G-sync is disabled for firefox though and does not appear to be engaged while FF is in use.

Component: Audio/Video: Playback → Graphics: WebRender

Sotaro, can you set priotity?

Flags: needinfo?(sotaro.ikeda.g)

Bug 1588544 seems almost the same, not dupeing just yet because the gfx cards are different. Since these two came up within days perhaps this is a recent regression? Maybe someone who sees this can do a quick check if this regressed recently.

I just tested since a reddit comment mentioned it, and hitting F11 to 'fullscreen' the tab also produces tearing when scrolling, so it's not video-specific, it's from fullscreen mode (I guess F11 and the fullscreen API function the same?)

I saw some mentions of this being caused by gsync, which is weird because it's not enabled for firefox (the driver control panel explicitly forbids you from enabling gsync on chrome or firefox).

I can confirm that if I disable g-sync globally in my driver settings, the fullscreen tearing goes away. So this is g-sync, somehow?

See Also: → 1588544

Updating title based on figuring out what this is (it's not related to primary/secondary monitors, just that my secondary is the only one with official gsync support)

Summary: Fullscreen video vsync broken on secondary monitors → Fullscreen video vsync broken on g-sync capable monitors when enabled in nvidia control panel

(In reply to Timothy Nikkel (:tnikkel) from comment #10)

Sotaro, can you set priotity?

:jbonisteel is a better person for the priority. Forward the question to her.

Flags: needinfo?(sotaro.ikeda.g) → needinfo?(jbonisteel)

:jrmuizel, is there a PC that could test G-Sync in Toronto office? I do not have a PC to test it.

Flags: needinfo?(jmuizelaar)

Nvidia did fix a bug recently regarding flickering in fullscreen YouTube videos in Firefox when GSync was enabled, which may or may not be related.

[Firefox][G-SYNC]: When G-SYNC is enabled, flickering occurs with YouTube full-screen video playback on FireFox when hovering over the timeline. [200544130]

There is also a hotfix (436.51) driver available that you could try even though it only lists unrelated fixes.

Flags: needinfo?(jbonisteel)
Priority: -- → P3

We purchased a g-sync monitor for Toronto. It should get here Thursday.

Flags: needinfo?(jmuizelaar)

(In reply to Jeff Muizelaar [:jrmuizel] from comment #17)

We purchased a g-sync monitor for Toronto. It should get here Thursday.

Thanks!

Katelyn, do you see the problem if you have only one monitor connected?

Flags: needinfo?(kg)

I just used Win-P to 'duplicate' the g-sync monitor to my non-g-sync monitor (so I have one desktop the size of the g-sync monitor) and the tearing appears to not be happening.

Flags: needinfo?(kg)

(In reply to Katelyn Gadd (:kael) from comment #21)

I just used Win-P to 'duplicate' the g-sync monitor to my non-g-sync monitor (so I have one desktop the size of the g-sync monitor) and the tearing appears to not be happening.

If you have only the g-sync monitor connected do the tearing happen?

Flags: needinfo?(kg)

Disabling the other monitor in control panel (so only the g-sync monitor is enabled) does not appear to remove the tearing, for some reason. I will see if it goes away after a reboot later on.

Hey Alexis - we could use a hand trying to reproduce this. We bought a g-sync monitor in the office in TO.

Flags: needinfo?(a.beingessner)

Sadly couldn't reproduce this in the office.

:kael, this didn't happen to mysteriously go away for you in the past two weeks did it??

Otherwise it's probably either monitor-specific or specific to nvidia's Turing microarch (we don't have any of those cards).


Steps taken to reproduce:

  • tried both a GTX 950 and a GTX 1080
  • hooked up to our gsync "predator" monitor
  • tried both the latest driver and the reported driver (436.48, the "oct 1st" release)
  • ensured gsync was working by booting up The Witness with the "G-Sync Indicator" (also to add some system load)
  • tried some fullscreen video and fullscreen scrolling
  • messed around with whether gsync was configured to run only fullscreen or windowed
Flags: needinfo?(a.beingessner)

Oh! Apparently one of our coworkers was seeing this at home on his 2080, gonna get help from him.

Flags: needinfo?(kg)

Hey Roger, you don't need to bring your 2080 in just yet, just some simple checks before we proceed:

  • Check that this happens in the latest nightly (and stable) (bonus: it would be nice to have a mozregression to when it started happening)
  • Check that this happens on the latest nvidia drivers and windows version (bonus: it would be nice to know what range of nvidia drivers it's broken on)
  • Check if it happens in Chrome or Edge or anything else

Note that this appears to only happen with webrender, so make sure that the browser is launched with gfx.webrender.enabled=true! (not a live pref)

Flags: needinfo?(royang)
Assignee: nobody → a.beingessner

Still reproducing, ff71.0b7 and nvidia driver 441.08.

Could be due to display geometry? I'm using a 3840x2160 monitor and a 3440x1440 monitor. The latter is the g-sync panel which has the tearing issue. I know in the past FF has had rendering issues that only appeared when your desktop was big enough to put strain on the compositor, so that could be a factor here.

Installing nvidia driver 441.12 fixed the problem for me.

Firefox versions I used when the issue was happening: 71b1 - 71b7

My monitor setup: 4K gsync monitor and VR headset.

Bugbug thinks this bug is a regression, but please revert this change in case of error.

Keywords: regression

Tested with 441.12 with Nightly on Nov 9th 2019 on Windows 10 on a LG 144hz monitor (g-sync compatible). With prime video it still shows the tearing issue.

Flags: needinfo?(royang)

Spent the afternoon messing around with the RTX 2080 and gsync, sadly with no results.

I'm trying to isolate what the possible variables could be, and my completely baseless assumption is that it's some property of the monitor.

The monitor I'm testing on is the Predator XB1. Listed specs:

  • Screen Size: 23.8"
  • Maximum Resolution: (WQHD)2560 x 1440@144 Hz
  • Aspect Ratio: 16:9
  • Response Time: 1 ms
  • Overclock Refresh Rate: 165 Hz
  • Colour Support: 16.7 Million
  • Brightness: 350 cd/m²
  • Backlight: LED
  • Panel Type: TN (Twisted Nematic Film)
  • Ports & Connectors: HDMI®(1.2); 5x USB 3.0
  • Power: 27 W (ENERGY STAR® On)
  • Tearing Prevention Technology: NVIDIA® G-SYNC®
  • Dimensions (W x H x D): 541 mm x 326 mm x 64 mm

One interesting detail is that I believe this is a "true" g-sync monitor, and not simply a "g-sync compatible" one. Roger's was "g-sync compatible". Which is yours, :kael? Does anything stand out in the specs of this monitor as wildly different? Also if possible could you give the exact monitor models you're using?

Flags: needinfo?(kg)

The monitor that shows tearing is an ASUS PG348Q which has native G-Sync. The max resolution is 3440x1440. The max refresh rate is 100hz, and I run my desktop at full resolution / 60hz.

My other monitor is a BenQ PD2700U, which has native freesync but no g-sync support. It is not listed as g-sync compatible, so to do VRR on it I have to force it on in the driver. (I haven't done so.) It has a maximum resolution of 3840x2160 and a max refresh rate of 60hz. I also run it at full resolution / 60hz.

I don't expect it would matter but while both panels are listed as 10-bit on their spec sheet, the "display adapter properties" for the PD2700U displays 10-bit while the PG348Q displays 8-bit. I suspect this is because the BenQ is a HDR monitor (I have Windows' HDR turned off, however).

The XB1 is a native G-Sync monitor, yes. I assume you're running the desktop at 60hz as well?

Flags: needinfo?(kg)

Hey sotaro, we can't reproduce this in the office, and I can't find any clear variables that distinguish what we have from what the reporters have.

Anything you think would be interesting for our coworker Roger to try at home? about:config flags, or maybe some kind of instrumented build we'd want to toss his way? Anything that could help us isolate the problem at all.

Flags: needinfo?(sotaro.ikeda.g)
See Also: → 1581573

There is a similar bug on chromium, it also uses NVIDIA GeForce RTX 2080 Ti as comment 1.

Anything you think would be interesting for our coworker Roger to try at home? about:config flags, or maybe some kind of instrumented build we'd want to toss his way?

We could test whether DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL usage or compositor window usage trigger the problem by testing the following config combinations.

  • [1] Enable WebRender + Compositor window + DirectComposition + DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL
    • gfx.webrender.all: true
    • gfx.webrender.dcomp-win.enabled: true
    • gfx.webrender.compositor: false
  • [2] Enable WebRender + DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL
    • gfx.webrender.all: true
    • gfx.webrender.dcomp-win.enabled: false
    • gfx.webrender.flip-sequential: true
  • [3] Enable WebRender + DXGI_SWAP_EFFECT_SEQUENTIAL
    • gfx.webrender.all: true
    • gfx.webrender.dcomp-win.enabled: false
    • gfx.webrender.flip-sequential: false
  • [4] Enable WebRender + Compositor window + DirectComposition + DC layers(os compositor)
    • gfx.webrender.all: true
    • gfx.webrender.dcomp-win.enabled: true
    • gfx.webrender.compositor: true
Flags: needinfo?(sotaro.ikeda.g)

From Comment 35, it might better to ask NVIDIA about the problem.
:jrmuizel, how do you think about it?

Flags: needinfo?(jmuizelaar)
Attached image image.png

Could this be related to win10's game mode? It's on by default, but I have it disabled.

There's also this option I've never seen before, though I've never changed it. Perhaps it defaulted to on for other people?

Roger, can you try out the things described in https://bugzilla.mozilla.org/show_bug.cgi?id=1586929#c36 ?

Flags: needinfo?(royang)

Hi Alexis, tried all four combinations and the vertical sync issue is still reproducible in all four cases. Thanks,

Flags: needinfo?(royang)

Just wanted to say that the suggested combination [3] apparently fixed tearing for me so far!
All other combinations [1], [2] and [4] didn't.

I also had tearing issues in firefox fullscreen mode when gsync is enabled.

At first I only noticed it on fullscreen youtube video.

But with this test it's very easy to spot (heavy tearing in fullscreen, no issues in window mode)
https://www.testufo.com/chase#background=404040&leading=ffffff&trailing=00ffff&distance=32&pps=960&height=-1

(GTX1080, Nvidia 441.41, Asus MG279 Monitor (not officially gsync compatible))

I can confirm that option [3] did fix the issue for me after a restart. flip-sequential was already false, though, and i had set webrender.all back to false (qualified was true, so I think I already had WR by default anyway)

I should note that it feels like I get more dropped frames now, but it's hard to verify that. If there's a good way to record data on that (some webrender flag?) let me know so I can investigate.

See Also: → 1602212
Blocks: wr-wild
No longer blocks: wr-72
Flags: needinfo?(jmuizelaar)

So I was able to reproduce what Roger is seeing. The critical piece was setting "Vertical sync" to "Off" in the NVIDIA Control Panel. Can everyone else who's seeing this check what that is set to and report it here?

Flags: needinfo?(neiin)
Flags: needinfo?(kg)
Attached image global settings (kg)
Attached image program settings (kg)
Flags: needinfo?(kg)
See Also: → 1611048
Assignee: a.beingessner → nobody

(In reply to Jeff Muizelaar [:jrmuizel] from comment #44)

So I was able to reproduce what Roger is seeing. The critical piece was setting "Vertical sync" to "Off" in the NVIDIA Control Panel. Can everyone else who's seeing this check what that is set to and report it here?

I had mine set to "use 3D Application Setting".
Changing it to "On" resolves the issue

Blocks: vsync

I have the same issue, only in fullscreen, but I don't have G-Sync.

OS: Arch Linux
Kernel: Linux 5.8.3
Graphics: NVIDIA GeForce GTX 660 (proprietary driver)
One monitor, 1920x1080.

The issue does not appear outside of fullscreen mode.

I forgot to mention in my previous comment, I'm using Firefox version 81.0b1

Severity: normal → S3

The severity field for this bug is relatively low, S3. However, the bug has 5 See Also bugs.
:gw, could you consider increasing the bug severity?

For more information, please visit auto_nag documentation.

Flags: needinfo?(gwatson)

Clear a needinfo that is pending on an inactive user.

Inactive users most likely will not respond; if the missing information is essential and cannot be collected another way, the bug maybe should be closed as INCOMPLETE.

For more information, please visit auto_nag documentation.

Flags: needinfo?(neiin)
Status: NEW → RESOLVED
Closed: 2 years ago
Flags: needinfo?(gwatson)
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: