On Sun, Jan 28, 2018 at 11:34 AM, Rob Clark <robdcl...@gmail.com> wrote: > On Sun, Jan 28, 2018 at 11:24 AM, Rob Clark <robdcl...@gmail.com> wrote: >> On Sat, Jan 27, 2018 at 9:07 PM, Matt Turner <matts...@gmail.com> wrote: >>> On Sat, Jan 27, 2018 at 4:08 PM, Rob Clark <robdcl...@gmail.com> wrote: >>>> On Sat, Jan 27, 2018 at 7:02 PM, Matt Turner <matts...@gmail.com> wrote: >>>>> On Sat, Jan 27, 2018 at 10:06 AM, Rob Clark <robdcl...@gmail.com> wrote: >>>>>> Signed-off-by: Rob Clark <robdcl...@gmail.com> >>>>>> --- >>>>>> run.c | 12 ++++++++++++ >>>>>> 1 file changed, 12 insertions(+) >>>>>> >>>>>> diff --git a/run.c b/run.c >>>>>> index 69fe23d..20a0a6a 100644 >>>>>> --- a/run.c >>>>>> +++ b/run.c >>>>>> @@ -520,6 +520,18 @@ main(int argc, char **argv) >>>>>> }; >>>>>> EGLContext core_ctx = eglCreateContext(egl_dpy, cfg, EGL_NO_CONTEXT, >>>>>> attribs); >>>>>> + >>>>>> + if (core_ctx == EGL_NO_CONTEXT) { >>>>>> + static const EGLint attribs_31[] = { >>>>>> + EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR, >>>>>> + EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR, >>>>> >>>>> Profiles are only introduced in v3.2. I can't see how this can work. >>>>> >>>> >>>> entirely possible by accident.. not quite sure when shader-db started >>>> asking for 3.2 core profile, but that broke things for freedreno (and >>>> this patch "fixed" things) >>> >>> Must have never worked. run.c created core profiles from its inception. >> >> Hmm, I could be wrong then.. I *thought* glsl 140 shaders worked at some >> point. >> >> So then, how *does* one create a 3.1 core context? Since atm compat >> context only exposes 3.0. >> > > Hmm, ok, actually removing those two lines might actually be working. > But from somewhere (libepoxy?) I'm getting an error "Couldn't find > current GLX or EGL context.".. >
yeah, that seems to be coming from libepoxy.. I think at this point I blame a combination of libglvnd and libepoxy.. seems like libepoxy is calling eglQueryContext(EGL_CONTEXT_CLIENT_TYPE) to figure out the current API, but somehow that doesn't get through to mesa so the return ends up being EGL_NONE. This happen's from run.c's glCreateProgram() call, but somehow a previous eglQueryContext(EGL_CONTEXT_CLIENT_TYPE) when run switched context before calling glCreateProgram() worked ok!?! Sigh.. BR, -R _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev