Re: Skype bi-directional video call crashes X server (xserver, mesa, drm, kernel from git, r600g+glamor)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Kertesz Laszlo <laszlo.kertesz@xxxxxxxxx> writes:

> Ok, rebuilt the xserver package with debugging symbols (seems that
> checkinstall strips stuff by default). I got a bigger gdb.txt. See if it
> helps.

I found a bug -- glamor_xv_put_image was mis-computing the number of
lines of changed video when the client drew only a subset of the
image. I think the client is drawing at src_y=1, src_h=239 for some
weird reason (I suspect a bug in the client).

Try this patch:

From eaa4225413b31314070f9a52d9290649e79a3b0f Mon Sep 17 00:00:00 2001
From: Keith Packard <keithp@xxxxxxxxxx>
Date: Sat, 27 Dec 2014 09:11:33 -0800
Subject: [PATCH] glamor: Fix nlines in glamor_xv_put_image when src_y is odd

The number of lines of video to update in the texture needs to be
computed from the height of the updated source, not the full height of
the source.

Signed-off-by: Keith Packard <keithp@xxxxxxxxxx>
---
 glamor/glamor_xv.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/glamor/glamor_xv.c b/glamor/glamor_xv.c
index 1c877da..83e24ad 100644
--- a/glamor/glamor_xv.c
+++ b/glamor/glamor_xv.c
@@ -435,7 +435,7 @@ glamor_xv_put_image(glamor_port_private *port_priv,
     }
 
     top = (src_y) & ~1;
-    nlines = (src_y + height) - top;
+    nlines = (src_y + src_h) - top;
 
     switch (id) {
     case FOURCC_YV12:
-- 
2.1.4

-- 
keith.packard@xxxxxxxxx

Attachment: signature.asc
Description: PGP signature

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel

[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux