The same failure pattern is observable in several pbuffer depth/stencil tests: dEQP-EGL.functional.create_surface.pbuffer.rgb888_depth_stencil.sklm64 Compatible configs: { 7, 23 } Creating pbuffer surface with config ID 7 Fail, maximum pbuffer size of 0x0 reported Creating pbuffer surface with config ID 23 Fail, maximum pbuffer size of 0x0 reported
fix on it's way to CI testing
Created attachment 127417 [details] [review] fix
*** Bug 98341 has been marked as a duplicate of this bug. ***
commit b91e1e38e87b372d409469dfe00ace76c8febd34 Author: Tapani Pälli <tapani.palli@intel.com> Date: Thu Oct 20 10:33:33 2016 +0300 egl/dri2: set max values for pbuffer width and height While these max values were previously fixed for pbuffer creation, this change makes also eglGetConfigAttrib() return correct values. Fixes following dEQP tests: dEQP-EGL.functional.create_surface.pbuffer.rgb888_no_depth_no_stencil dEQP-EGL.functional.create_surface.pbuffer.rgb888_depth_stencil dEQP-EGL.functional.create_surface.pbuffer.rgba8888_no_depth_no_stencil dEQP-EGL.functional.create_surface.pbuffer.rgba8888_depth_stencil Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98326 Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Cc: "12.0 13.0" <mesa-stable@lists.freedesktop.org>
For some reason, these tests continue to fail on about half of the hsw systems that I've tested: Compatible configs: { 5, 17 } Creating pbuffer surface with config ID 5 EGL_CONFIG_ID: 5 EGL_WIDTH: 64 EGL_HEIGHT: 64 EGL_HORIZONTAL_RESOLUTION: -1 EGL_VERTICAL_RESOLUTION: -1 EGL_MULTISAMPLE_RESOLVE: EGL_MULTISAMPLE_RESOLVE_DEFAULT EGL_PIXEL_ASPECT_RATIO: -1 EGL_RENDER_BUFFER: EGL_BACK_BUFFER EGL_SWAP_BEHAVIOR: EGL_BUFFER_PRESERVED EGL_ALPHA_FORMAT: EGL_ALPHA_FORMAT_NONPRE EGL_COLORSPACE: EGL_COLORSPACE_sRGB EGL_LARGEST_PBUFFER: EGL_FALSE EGL_TEXTURE_FORMAT: EGL_NO_TEXTURE EGL_TEXTURE_TARGET: EGL_NO_TEXTURE EGL_MIPMAP_TEXTURE: EGL_FALSE EGL_MIPMAP_LEVEL: 0x00000000 Fail, swap behavior is reported as preserve but configuration does not support it. I get the same result intermittently on SNB. Tapani, can you shed some light on why this is happening? I've disabled the tests in CI until this understood.
(In reply to Mark Janes from comment #5) > For some reason, these tests continue to fail on about half of the hsw > systems that I've tested: > > Compatible configs: { 5, 17 } > Creating pbuffer surface with config ID 5 > EGL_CONFIG_ID: 5 > EGL_WIDTH: 64 > EGL_HEIGHT: 64 > EGL_HORIZONTAL_RESOLUTION: -1 > EGL_VERTICAL_RESOLUTION: -1 > EGL_MULTISAMPLE_RESOLVE: EGL_MULTISAMPLE_RESOLVE_DEFAULT > EGL_PIXEL_ASPECT_RATIO: -1 > EGL_RENDER_BUFFER: EGL_BACK_BUFFER > EGL_SWAP_BEHAVIOR: EGL_BUFFER_PRESERVED > EGL_ALPHA_FORMAT: EGL_ALPHA_FORMAT_NONPRE > EGL_COLORSPACE: EGL_COLORSPACE_sRGB > EGL_LARGEST_PBUFFER: EGL_FALSE > EGL_TEXTURE_FORMAT: EGL_NO_TEXTURE > EGL_TEXTURE_TARGET: EGL_NO_TEXTURE > EGL_MIPMAP_TEXTURE: EGL_FALSE > EGL_MIPMAP_LEVEL: 0x00000000 > Fail, swap behavior is reported as preserve but configuration does not > support it. > > I get the same result intermittently on SNB. > > Tapani, can you shed some light on why this is happening? I've disabled the > tests in CI until this understood. Huh ok .. that is mismatch between selected config and surface type .. so there's actually 2 issues here where I've fixed just the first one. Thanks, for some reason I did not see this happen on my configuration.
Mark, is it possible that some of your machines use DRI3 and some DRI2? These have different behaviour for the preserved bit, if I've understood correctly DRI3 does not support preserved at all, this could be why some machines fail and some pass?
This build might have a fix to the issue: http://otc-mesa-ci.jf.intel.com/job/tpalli/201/ the fix is available in this tree for testing: https://cgit.freedesktop.org/~tpalli/mesa/log/?h=fix_swap_behavior
I'll test it.
That patch fixes the test on one of the machines that was previously failing.
(In reply to Mark Janes from comment #10) > That patch fixes the test on one of the machines that was previously failing. So some machines still failing? I'll push all related patches today so let's see if something's still left. I was a bit stupid and did not include everything in that tested branch :/ I'm running a CI right now with all patches, job 205.
Sorry, I wasn't clear. I tested on one of the machines that was known to fail reliably, and all tests passed. So there are no remaining failures that I know of.
(In reply to Mark Janes from comment #12) > Sorry, I wasn't clear. I tested on one of the machines that was known to > fail reliably, and all tests passed. > > So there are no remaining failures that I know of. \o/ superb, I'll push fixes in!
commit 2035930966b05a7c4dd1f6559d66b5a3b41e01a5 Author: Tapani Pälli <tapani.palli@intel.com> Date: Wed Oct 26 13:54:51 2016 +0300 egl: set preserved behavior for surface only if config supports it Otherwise we can end up with mismatching behavior between config and surface when client queries surface attributes. As example, configs for DRI3 do not support preserved behavior but here we were setting preserved behavior for pixmap and pbuffer. Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98326 Cc: "12.0 13.0" <mesa-stable@lists.freedesktop.org> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Chad Versace <chadversary@chromium.org> Tested-by: Mark Janes <mark.a.janes@intel.com>
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.