[Piglit] Core vs compat 3.1 contexts

Ken Phillis Jr kphillisjr at gmail.com
Wed Jun 18 15:08:43 PDT 2014


I think this is a case where using the forward compatibility bit may be a
reasonable fix. This is because it will always disable the compatibility
profile on core...

http://www.opengl.org/wiki/Core_And_Compatibility_in_Contexts
On Jun 18, 2014 4:43 PM, "Chad Versace" <chad.versace at intel.com> wrote:

> On Wed, Jun 18, 2014 at 12:29:09AM +0100, Emil Velikov wrote:
> > On 17/06/14 23:50, Ian Romanick wrote:
> > > On 06/16/2014 11:29 PM, Ilia Mirkin wrote:
>
> > > This poses a problem for piglit.  We want to make tests for things that
> > > don't have GL_ARB_compatibility, but we can't actually ask for that.
> > > When a test says
> > >
> > >     config.supports_gl_core_version = 31;
> > >
> > > Waffle uses glXCreateContextAttribsARB to create 3.1 context.  It then
> > > checks to see whether or not that context has GL_ARB_compatibility.  If
> > > it does, then context creation fails.  Waffle will then try to create
> > > some other kind of context if you set another supports_gl_* value.
> > >
> > Waffle itself does not check for GL_ARB_compat when creating a context.
> The
> > decision of what to do if the extension is available is left to the user
> -
> > which imho is the only sane solution.
> >
> > From the man page
> >    If the chosen API is <constant>WAFFLE_CONTEXT_OPENGL</constant>
> >    and version 3.1 is requested,
> >    then the returned context may implement any of:
> >
> >     * Version 3.1, with or without the GL_ARB_compatibility extension.
> >     * The core profile of version 3.2 or greater.
> >
> > > I think this is a bug in Waffle (or maybe piglit's usage of Waffle).
>  If
> > > a 3.1 context with GL_ARB_compatibility was created, Waffle should try
> > > again by asking for a 3.2 core profile.
> > >
> > >> This seems to come from piglit_wfl_framework.c:special_case_gl_31.
> > >>
> > >> Unfortunately I know ~nothing about the subtleties of all this, but
> > >> what's the way forward? Is the driver at fault? Piglit? FTR, changing
> > >> the supports_gl_core_version to 32 fixes it.
>
> This is not a bug in Waffle. Waffle does the only sane and correct
> thing. Waffle could do the thing you want only if the OpenGL API were
> more friendly to middleware libraries. Specifically, OpenGL needs to
> provide an API with an explicit context parameter.
>
> The bug is in Piglit.
>
> I wrote a fix that gives Ilia the behavior he wants. I'm regression
> testing the fix right now.
> _______________________________________________
> Piglit mailing list
> Piglit at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/piglit
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20140618/fa1bdca3/attachment.html>


More information about the Piglit mailing list