[prefix=PATCH weston] gl-renderer.c: Pass visual ID for choosing egl configs for pbuffer

Madhurkiran Harikrishnan MADHURKI at xilinx.com
Fri Aug 3 00:04:28 UTC 2018


Hi Daniel,

Thanks for the detailed explanation, I will send v2 patch.

Thanks
Mads

-----Original Message-----
From: Daniel Stone [mailto:daniel at fooishbar.org] 
Sent: Thursday, August 02, 2018 5:35 AM
To: Madhurkiran Harikrishnan <MADHURKI at xilinx.com>
Cc: wayland <wayland-devel at lists.freedesktop.org>; nofooter <nofooter at xilinx.com>
Subject: Re: [prefix=PATCH weston] gl-renderer.c: Pass visual ID for choosing egl configs for pbuffer

Hi Madhurkiran,

On Tue, 31 Jul 2018 at 02:02, Madhurkiran Harikrishnan <MADHURKI at xilinx.com> wrote:
> Thanks for the comments. For a not having configless_context,  can you explain why should I check gr->egl_config, because the attributes passed while getting this gr->egl_config does not have EGL_PBUFFER_BIT set for EGL_SURFACE_TYPE, which means config returned from the driver would not have this bit set. In that case, shouldn't pbuffer_config just suffice.

Please see the lines I quoted here:

> On Wed, 21 Mar 2018 at 22:45, Madhurkiran Harikrishnan <madhurkiran.harikrishnan at xilinx.com> wrote:
> > +       if (pbuffer_config != gr->egl_config &&
> > +           !gr->has_configless_context) {
> > +               weston_log("attempted to use a different EGL config for an "
> > +                          "output but EGL_KHR_no_config_context or "
> > +                          "EGL_MESA_configless_context is not supported\n");
> > +               return -1;
> > +       }

With the patch you have posted, if the driver does not support configless_context, the code will:
  - pick an EGL_WINDOW_BIT EGLConfig (via ChooseConfig) and assign this to gr->egl_config
  - pick another EGL_PBUFFER_BIT EGLConfig (via ChooseConfig) and assign this to pbuffer_config
  - if pbuffer_config != gr->egl_config, return error and fail

So from your code, you already say that the two configs must be the same config. What I am saying is that since we already know what the value of the config must be (the same as the one we have already selected), there is no need to call ChooseConfig twice. Just call it once, and make sure that a config which supports both window + pbuffer is selected.

Cheers,
Daniel


More information about the wayland-devel mailing list