<div dir="ltr">Hi Eric,<div><br></div><div>Yes, you pushing this series would be great. I did run our test suite on this patchset as well. </div><div><br></div><div>Best wishes,</div><div>Gurchetan</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Oct 3, 2017 at 7:02 AM, Eric Engestrom <span dir="ltr"><<a href="mailto:eric.engestrom@imgtec.com" target="_blank">eric.engestrom@imgtec.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Monday, 2017-10-02 20:48:24 +0000, <a href="mailto:gurchetansingh@chromium.org">gurchetansingh@chromium.org</a> wrote:<br>
> From: Gurchetan Singh <<a href="mailto:gurchetansingh@chromium.org">gurchetansingh@chromium.org</a>><br>
><br>
> The kms_swrast extension is an actively developed software fallback,<br>
> and platform_surfaceless can use it if there are no available<br>
> hardware drivers.<br>
><br>
> v2: Split into 2 patches, use booleans, check LIBGL_ALWAYS_SOFTWARE,<br>
>     and modify the eglLog level (Emil, Eric, Tomasz).<br>
<br>
</span>Thanks, this is perfect :)<br>
<br>
Reviewed-by: Eric Engestrom <<a href="mailto:eric.engestrom@imgtec.com">eric.engestrom@imgtec.com</a>><br>
<br>
Do you want me to push this for you?<br>
<br>
It might be worth running deqp and other test suites to make sure<br>
everything is wired up correctly.<br>
(Given your chromium affiliation, I'm assuming you already know how to<br>
use the surfaceless patches for deqp [1])<br>
<br>
[1] <a href="https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/master/media-gfx/deqp" rel="noreferrer" target="_blank">https://chromium.googlesource.<wbr>com/chromiumos/overlays/<wbr>chromiumos-overlay/+/master/<wbr>media-gfx/deqp</a><br>
<span class=""><br>
> ---<br>
>  src/egl/drivers/dri2/platform_<wbr>surfaceless.c | 19 +++++++++++++++----<br>
>  1 file changed, 15 insertions(+), 4 deletions(-)<br>
><br>
> diff --git a/src/egl/drivers/dri2/<wbr>platform_surfaceless.c b/src/egl/drivers/dri2/<wbr>platform_surfaceless.c<br>
> index f6aa217d39..b0a43ac9de 100644<br>
> --- a/src/egl/drivers/dri2/<wbr>platform_surfaceless.c<br>
> +++ b/src/egl/drivers/dri2/<wbr>platform_surfaceless.c<br>
</span>[snip]<br>
<span class="">> @@ -320,7 +324,14 @@ dri2_initialize_surfaceless(_<wbr>EGLDriver *drv, _EGLDisplay *disp)<br>
><br>
>     dri2_dpy->fd = -1;<br>
>     disp->DriverData = (void *) dri2_dpy;<br>
<br>
</span>Nit: newline here<br>
(I'll add it if/when I commit it, don't send a v3 for that)<br>
<div class="HOEnZb"><div class="h5"><br>
> -   if (!surfaceless_probe_device(<wbr>disp)) {<br>
> +   if (!env_var_as_boolean("LIBGL_<wbr>ALWAYS_SOFTWARE", false)) {<br>
> +      driver_loaded = surfaceless_probe_device(disp, false);<br>
> +      if (!driver_loaded)<br>
> +         _eglLog(_EGL_WARNING, "No hardware driver found, falling back to "<br>
> +              "software rendering");<br>
> +   }<br>
> +<br>
> +   if (!driver_loaded && !surfaceless_probe_device(<wbr>disp, true)) {<br>
>        err = "DRI2: failed to load driver";<br>
>        goto cleanup;<br>
>     }<br>
> --<br>
> 2.13.5<br>
><br>
</div></div></blockquote></div><br></div>