Skip to content
Snippets Groups Projects
  1. Nov 09, 2018
  2. Nov 08, 2018
  3. Nov 07, 2018
  4. Nov 06, 2018
  5. Nov 05, 2018
    • Emil Velikov's avatar
      egl/glvnd: correctly report errors when vendor cannot be found · 22201d20
      Emil Velikov authored
      
      If the user provides an invalid display or device the ToVendor lookup
      will fail.
      
      In this case, the local [Mesa vendor] error code will be set. Thus on
      sequential eglGetError(), the error will be EGL_SUCCESS.
      
      To be more specific, GLVND remembers the last vendor and calls back
      into it's eglGetError, although there's no guarantee to ever have had
      one.
      
      v2:
       - Add _eglError call, so the debug callback is executed (Kyle)
       - Drop XXX comment.
      
      Piglit: tests/egl/spec/egl_ext_device_query
      Fixes: ce562f9e ("EGL: Implement the libglvnd interface for EGL (v3)")
      Cc: Eric Engestrom <eric@engestrom.ch>
      Signed-off-by: default avatarEmil Velikov <emil.velikov@collabora.com>
      Reviewed-by: default avatarKyle Brenneman <kbrenneman@nvidia.com>
      (cherry picked from commit b3ade653)
      22201d20
    • Emil Velikov's avatar
      egl: add EGL_EXT_device_base entrypoints · 60fe2f6e
      Emil Velikov authored
      eglQueryDevicesEXT (unlike the other three functions) does not depend
      on the display. It is implemented in GLVND, which calls into each
      driver collecting the list of devices and presenting it to the user.
      
      For the other entrypoints, GLVND acts as pass through stub calling into
      the vendor library. The vendor implementation calls back into GLVND to
      get the vendor dispatch. Then the driver proceeds to call itself via
      the said dispatch.
      
      This design makes is possible to keep using "old" GLVND with newer
      vendor drivers. Since effectively all the extension code is within the
      latter itself.
      
      Without said entrypoints, any user will outright crash - as reported in
      the bug report.
      
      Note: there's a follow-up fix needed to our GLVND code, to make piglit
      happy.
      
      v2: add some beefy documentation in the commit message.
      
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108635
      
      
      Fixes: 7552fcb7 ("egl: add base EGL_EXT_device_base implementation")
      Reported-by: default avatar <kyle.devir@mykolab.com>
      Cc: kyle.devir@mykolab.com
      Acked-by: Eric Engestrom's avatarEric Engestrom <eric@engestrom.ch>
      Signed-off-by: default avatarEmil Velikov <emil.velikov@collabora.com>
      Tested-by: default avatarEmil Velikov <emil.velikov@collabora.com>
      (cherry picked from commit 2a8fefde)
      60fe2f6e
  6. Nov 01, 2018
Loading