Re: [PATCH xserver] dri3: Fix dri3_buffers_from_pixmap request.

2018-04-17 Thread Adam Jackson
On Mon, 2018-04-16 at 21:27 +, Mike Lothian wrote:
> Tested-by: Mike Lothian 

remote: I: patch #217200 updated using rev 
4e92c51ce4d6ab50c1507a23a01c6be0d1954d79.
remote: I: 1 patch(es) updated to state Accepted.
To ssh://git.freedesktop.org/git/xorg/xserver
   a98a95b798..4e92c51ce4  master -> master

- ajax
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Re: [PATCH xserver] dri3: Fix dri3_buffers_from_pixmap request.

2018-04-16 Thread Mike Lothian
Tested-by: Mike Lothian 

On Mon, 16 Apr 2018 at 20:33 Louis-Francis Ratté-Boulianne <
l...@collabora.com> wrote:

> Thanks Mario for spotting that.
>
> On Mon, 2018-04-16 at 08:14 +0200, Mario Kleiner wrote:
> > Sending pixmap depth and bpp was omitted, so the Mesa
> > X11 + EGL + DRI3 side of things always failed to
> > dri3_create_image_khr_pixmap_from_buffers(), which led
> > to failure of X11 + EGL compositing under DRI3 under,
> > e.g., KDE Plasma 5.
> >
> > Fixes: 6e7c40f62db6 ("dri3: Add multi-planar/modifier buffer
> > requests")
> > Signed-off-by: Mario Kleiner 
> > Cc: Daniel Stone 
>
> Reviewed-by: Louis-Francis Ratté-Boulianne 
>
>
> > ---
> >  dri3/dri3_request.c | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c
> > index 2d3deb2..452b08a 100644
> > --- a/dri3/dri3_request.c
> > +++ b/dri3/dri3_request.c
> > @@ -481,7 +481,7 @@ proc_dri3_buffers_from_pixmap(ClientPtr client)
> >  int i;
> >  PixmapPtr pixmap;
> >
> > -REQUEST_SIZE_MATCH(xDRI3BufferFromPixmapReq);
> > +REQUEST_SIZE_MATCH(xDRI3BuffersFromPixmapReq);
> >  rc = dixLookupResourceByType((void **) , stuff->pixmap,
> > RT_PIXMAP,
> >   client, DixWriteAccess);
> >  if (rc != Success) {
> > @@ -497,6 +497,8 @@ proc_dri3_buffers_from_pixmap(ClientPtr client)
> >  rep.length = bytes_to_int32(num_fds * 2 * sizeof(CARD32));
> >  rep.width = pixmap->drawable.width;
> >  rep.height = pixmap->drawable.height;
> > +rep.depth = pixmap->drawable.depth;
> > +rep.bpp = pixmap->drawable.bitsPerPixel;
> >  rep.modifier = modifier;
> >
> >  if (client->swapped) {
> ___
> xorg-devel@lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: https://lists.x.org/mailman/listinfo/xorg-devel
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Re: [PATCH xserver] dri3: Fix dri3_buffers_from_pixmap request.

2018-04-16 Thread Louis-Francis Ratté-Boulianne
Thanks Mario for spotting that.

On Mon, 2018-04-16 at 08:14 +0200, Mario Kleiner wrote:
> Sending pixmap depth and bpp was omitted, so the Mesa
> X11 + EGL + DRI3 side of things always failed to
> dri3_create_image_khr_pixmap_from_buffers(), which led
> to failure of X11 + EGL compositing under DRI3 under,
> e.g., KDE Plasma 5.
> 
> Fixes: 6e7c40f62db6 ("dri3: Add multi-planar/modifier buffer
> requests")
> Signed-off-by: Mario Kleiner 
> Cc: Daniel Stone 

Reviewed-by: Louis-Francis Ratté-Boulianne 


> ---
>  dri3/dri3_request.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c
> index 2d3deb2..452b08a 100644
> --- a/dri3/dri3_request.c
> +++ b/dri3/dri3_request.c
> @@ -481,7 +481,7 @@ proc_dri3_buffers_from_pixmap(ClientPtr client)
>  int i;
>  PixmapPtr pixmap;
>  
> -REQUEST_SIZE_MATCH(xDRI3BufferFromPixmapReq);
> +REQUEST_SIZE_MATCH(xDRI3BuffersFromPixmapReq);
>  rc = dixLookupResourceByType((void **) , stuff->pixmap,
> RT_PIXMAP,
>   client, DixWriteAccess);
>  if (rc != Success) {
> @@ -497,6 +497,8 @@ proc_dri3_buffers_from_pixmap(ClientPtr client)
>  rep.length = bytes_to_int32(num_fds * 2 * sizeof(CARD32));
>  rep.width = pixmap->drawable.width;
>  rep.height = pixmap->drawable.height;
> +rep.depth = pixmap->drawable.depth;
> +rep.bpp = pixmap->drawable.bitsPerPixel;
>  rep.modifier = modifier;
>  
>  if (client->swapped) {
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Re: [PATCH xserver] dri3: Fix dri3_buffers_from_pixmap request.

2018-04-16 Thread Mike Lothian
Hi Mario

Thanks for finding this, I'll test it tonight

Cheers

Mike

On Mon, 16 Apr 2018 at 07:15 Mario Kleiner 
wrote:

> Sending pixmap depth and bpp was omitted, so the Mesa
> X11 + EGL + DRI3 side of things always failed to
> dri3_create_image_khr_pixmap_from_buffers(), which led
> to failure of X11 + EGL compositing under DRI3 under,
> e.g., KDE Plasma 5.
>
> Fixes: 6e7c40f62db6 ("dri3: Add multi-planar/modifier buffer requests")
> Signed-off-by: Mario Kleiner 
> Cc: Daniel Stone 
> Cc: Louis-Francis Ratté-Boulianne 
> ---
>  dri3/dri3_request.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/dri3/dri3_request.c b/dri3/dri3_request.c
> index 2d3deb2..452b08a 100644
> --- a/dri3/dri3_request.c
> +++ b/dri3/dri3_request.c
> @@ -481,7 +481,7 @@ proc_dri3_buffers_from_pixmap(ClientPtr client)
>  int i;
>  PixmapPtr pixmap;
>
> -REQUEST_SIZE_MATCH(xDRI3BufferFromPixmapReq);
> +REQUEST_SIZE_MATCH(xDRI3BuffersFromPixmapReq);
>  rc = dixLookupResourceByType((void **) , stuff->pixmap,
> RT_PIXMAP,
>   client, DixWriteAccess);
>  if (rc != Success) {
> @@ -497,6 +497,8 @@ proc_dri3_buffers_from_pixmap(ClientPtr client)
>  rep.length = bytes_to_int32(num_fds * 2 * sizeof(CARD32));
>  rep.width = pixmap->drawable.width;
>  rep.height = pixmap->drawable.height;
> +rep.depth = pixmap->drawable.depth;
> +rep.bpp = pixmap->drawable.bitsPerPixel;
>  rep.modifier = modifier;
>
>  if (client->swapped) {
> --
> 2.7.4
>
> ___
> xorg-devel@lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: https://lists.x.org/mailman/listinfo/xorg-devel
___
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel