On 02/20/2013 05:44 PM, Eric Anholt wrote: > Chad Versace <chad.vers...@linux.intel.com> writes: > >> -----BEGIN PGP SIGNED MESSAGE----- >> Hash: SHA1 >> >> I'm seeking feedback on an EGL extension that I'm drafting. The ideas have >> already been discussed at Khronos meetings to a good reception, but I want >> feedback from Mesa developers too. >> >> Summary >> - ------- >> The extension, tentatively named EGL_EXT_platform_display, enables EGL >> clients >> to specify to which platform (X11, Wayland, gbm, etc) an EGL resource >> (EGLDisplay, EGLSurface, etc) belongs when the resource is derived from >> a platform-native type. As a corollary, the extension enables the creation of >> EGL resources from different platforms within a single process. >> >> >> Feedback >> - -------- >> I'd like to hear feeback about the details below. Do you see any potential >> problems? Is it lacking a feature that you believe should be present? > > Seems pretty reasonable as an outline. I'm not clear, though, what are > the rules on sharing EGL resources like EGLImages between EGLDisplays?
If I interpreted correctly all the pertinent EGL specs, currently no resource sharing is allowed between EGLDisplays. So, the EGL_EXT_display_platform doesn't need to define additional restrictions here. Here's my reasoning based on my interpretation of the specs. I can think of four resources that can potentially be shared: - EGLContext The EGL 1.4 spec states that all contexts in a share group must belong to the same display. This restriction should not be lifted by EGL_EXT_platform_display. - EGLSurface I could find no text in the EGL 1.4 discussing sharing of EGLSurfaces, so the EGL_EXT_platform_display spec should explicitly ban sharing them between displays from different platforms. If necessary, a layered extension can add sharing for special cases. - EGLImage EGLImages are created with respect to an EGLDisplay and EGLContext, so I assume that they can be shared only among contexts within same share group. The EGL_KHR_image_base specs give any useful details about sharing. - EGLStream An EGLStream is created with respect to an EGLDisplay, but not a context. Because the spec does not say otherwise, I assume EGLStreams also cannot be shared across displays. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev