[Mesa-dev] [PATCH 2/2] egl/surfaceless: Use KMS swrast fallback

Eric Engestrom eric.engestrom at imgtec.com
Tue Oct 3 17:04:12 UTC 2017


On Tuesday, 2017-10-03 16:30:18 +0000, Gurchetan Singh wrote:
> Hi Eric,
> 
> Yes, you pushing this series would be great.

Done; since I was editing it anyway, I also moved the _eglLog() string
to avoid breaking it (makes grepping easier).

> I did run our test suite on this patchset as well.

You mean deqp, or another one?
I assume the results were "100% success"?

> 
> Best wishes,
> Gurchetan
> 
> On Tue, Oct 3, 2017 at 7:02 AM, Eric Engestrom <eric.engestrom at imgtec.com>
> wrote:
> 
> > On Monday, 2017-10-02 20:48:24 +0000, gurchetansingh at chromium.org wrote:
> > > From: Gurchetan Singh <gurchetansingh at chromium.org>
> > >
> > > The kms_swrast extension is an actively developed software fallback,
> > > and platform_surfaceless can use it if there are no available
> > > hardware drivers.
> > >
> > > v2: Split into 2 patches, use booleans, check LIBGL_ALWAYS_SOFTWARE,
> > >     and modify the eglLog level (Emil, Eric, Tomasz).
> >
> > Thanks, this is perfect :)
> >
> > Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>
> >
> > Do you want me to push this for you?
> >
> > It might be worth running deqp and other test suites to make sure
> > everything is wired up correctly.
> > (Given your chromium affiliation, I'm assuming you already know how to
> > use the surfaceless patches for deqp [1])
> >
> > [1] https://chromium.googlesource.com/chromiumos/overlays/
> > chromiumos-overlay/+/master/media-gfx/deqp
> >
> > > ---
> > >  src/egl/drivers/dri2/platform_surfaceless.c | 19 +++++++++++++++----
> > >  1 file changed, 15 insertions(+), 4 deletions(-)
> > >
> > > diff --git a/src/egl/drivers/dri2/platform_surfaceless.c
> > b/src/egl/drivers/dri2/platform_surfaceless.c
> > > index f6aa217d39..b0a43ac9de 100644
> > > --- a/src/egl/drivers/dri2/platform_surfaceless.c
> > > +++ b/src/egl/drivers/dri2/platform_surfaceless.c
> > [snip]
> > > @@ -320,7 +324,14 @@ dri2_initialize_surfaceless(_EGLDriver *drv,
> > _EGLDisplay *disp)
> > >
> > >     dri2_dpy->fd = -1;
> > >     disp->DriverData = (void *) dri2_dpy;
> >
> > Nit: newline here
> > (I'll add it if/when I commit it, don't send a v3 for that)
> >
> > > -   if (!surfaceless_probe_device(disp)) {
> > > +   if (!env_var_as_boolean("LIBGL_ALWAYS_SOFTWARE", false)) {
> > > +      driver_loaded = surfaceless_probe_device(disp, false);
> > > +      if (!driver_loaded)
> > > +         _eglLog(_EGL_WARNING, "No hardware driver found, falling back
> > to "
> > > +              "software rendering");
> > > +   }
> > > +
> > > +   if (!driver_loaded && !surfaceless_probe_device(disp, true)) {
> > >        err = "DRI2: failed to load driver";
> > >        goto cleanup;
> > >     }
> > > --
> > > 2.13.5
> > >
> >


More information about the mesa-dev mailing list