[Xquartz-dev] Help requested debugging rgl under XQuartz
Duncan Murdoch
murdoch.duncan at gmail.com
Tue Feb 23 06:14:22 PST 2021
On 23/02/2021 12:47 a.m., Jeremy Huddleston Sequoia wrote:
>
>
>> On Feb 22, 2021, at 14:38, Duncan Murdoch <murdoch.duncan at gmail.com
>> <mailto:murdoch.duncan at gmail.com>> wrote:
>>
>> I've made a little bit of progress.
>>
>> The message "error: xp_attach_gl_context returned: 2" comes from the
>> Mesa routine surface_make_current, which calls xp_attach_gl_context.
>> I haven't found where xp_attach_gl_context is defined.
>
> xp_attach_gl_context is in libXplugin (check Xplugin.h in the SDK).
>
> 2 is XP_BadValue, which is returned if cgl_ctx is NULL... so I'd suggest
> looking into why mesa is calling xp_attach_gl_context with a NULL context.
Thanks, that's helpful. The context is not NULL, so I need to think of
other ways it could be "bad". Here's what I see with
LIBGL_DIAGNOSTIC=1. For a successful open,
> rgl.open()
function is no-op
Debug ../src/glx/apple/apple_glx_context.c:205
apple_glx_create_context(4295810496): apple_glx_create_context: ac
0x100a10a00 ac->context_obj 0x107cdce00
2021-02-23 08:23:00.041711-0500 R[45754:1283995]
apple_glx_create_context: ac 0x100a10a00 ac->context_obj 0x107cdce00
Debug ../src/glx/apple/apple_glx_drawable.c:342
apple_glx_drawable_create(4295810496): apple_glx_drawable_create: new
drawable 0x107ce0e00
2021-02-23 08:23:00.042235-0500 R[45754:1283995]
apple_glx_drawable_create: new drawable 0x107ce0e00
Debug ../src/glx/apple/apple_glx_surface.c:154
create_surface(4295810496): create_surface: created a surface for
drawable 0x600066 with uid 621
2021-02-23 08:23:00.044773-0500 R[45754:1283995] create_surface: created
a surface for drawable 0x600066 with uid 621
Debug ../src/glx/apple/apple_glx_surface.c:69
surface_make_current(4295810496): surface_make_current: ac->context_obj
0x107cdce00 s->surface_id 9
2021-02-23 08:23:00.044839-0500 R[45754:1283995] surface_make_current:
ac->context_obj 0x107cdce00 s->surface_id 9
Debug ../src/glx/apple/apple_glx_surface.c:89
surface_make_current(4295810496): surface_make_current: drawable 0x600066
2021-02-23 08:23:00.045680-0500 R[45754:1283995] surface_make_current:
drawable 0x600066
... (more lines deleted)
After I run quartz(), I see this:
> rgl.open()
Debug ../src/glx/apple/apple_glx_context.c:205
apple_glx_create_context(4295810496): apple_glx_create_context: ac
0x10262bb00 ac->context_obj 0x1058c4800
2021-02-23 08:23:35.666675-0500 R[45754:1283995]
apple_glx_create_context: ac 0x10262bb00 ac->context_obj 0x1058c4800
Debug ../src/glx/apple/apple_glx_drawable.c:342
apple_glx_drawable_create(4295810496): apple_glx_drawable_create: new
drawable 0x107648000
2021-02-23 08:23:35.667040-0500 R[45754:1283995]
apple_glx_drawable_create: new drawable 0x107648000
Debug ../src/glx/apple/apple_glx_surface.c:154
create_surface(4295810496): create_surface: created a surface for
drawable 0x6000c9 with uid 629
2021-02-23 08:23:35.669119-0500 R[45754:1283995] create_surface: created
a surface for drawable 0x6000c9 with uid 629
Debug ../src/glx/apple/apple_glx_surface.c:69
surface_make_current(4295810496): surface_make_current: ac->context_obj
0x1058c4800 s->surface_id 13
2021-02-23 08:23:35.669195-0500 R[45754:1283995] surface_make_current:
ac->context_obj 0x1058c4800 s->surface_id 13
error: xp_attach_gl_context returned: 2
Debug ../src/glx/applegl_glx.c:60
applegl_bind_context(4295810496): applegl_bind_context: error YES
2021-02-23 08:23:35.669834-0500 R[45754:1283995] applegl_bind_context:
error YES
and then I get my own messages from the failure of glXMakeCurrent(). As
far as I can see, everything appears fine until the call to
xp_attach_gl_context.
Everything looks very similar up to the failure of xp_attach_gl_context.
Any idea I why the value returned a few lines earlier from
apple_glx_create_context() should be a bad value?
Duncan Murdoch
More information about the Xquartz-dev
mailing list