diff -Nru xserver-xorg-video-intel-2.99.917+git1703311610.cb6ba2d~y~padoka0/debian/changelog xserver-xorg-video-intel-2.99.917+git1704102223.b57abe2~y~padoka0/debian/changelog --- xserver-xorg-video-intel-2.99.917+git1703311610.cb6ba2d~y~padoka0/debian/changelog 2017-03-31 19:10:27.000000000 +0000 +++ xserver-xorg-video-intel-2.99.917+git1704102223.b57abe2~y~padoka0/debian/changelog 2017-04-11 01:24:04.000000000 +0000 @@ -1,11 +1,11 @@ -xserver-xorg-video-intel (2:2.99.917+git1703311610.cb6ba2d~y~padoka0) yakkety; urgency=medium +xserver-xorg-video-intel (2:2.99.917+git1704102223.b57abe2~y~padoka0) yakkety; urgency=medium * Checkout from master git branch up to commit - cb6ba2da056f3298a765b4da5cd626343c00a533 + b57abe20e81f4b8e4dd203b6a9eda7ff441bc8ce * enabled DRI3 by default - -- Paulo Dias Fri, 31 Mar 2017 16:10:27 -0300 + -- Paulo Dias Mon, 10 Apr 2017 22:24:04 -0300 xserver-xorg-video-intel (2:2.99.917+git1412301240.0d42b0e~padoka0) utopic; urgency=medium diff -Nru xserver-xorg-video-intel-2.99.917+git1703311610.cb6ba2d~y~padoka0/src/sna/sna_display.c xserver-xorg-video-intel-2.99.917+git1704102223.b57abe2~y~padoka0/src/sna/sna_display.c --- xserver-xorg-video-intel-2.99.917+git1703311610.cb6ba2d~y~padoka0/src/sna/sna_display.c 2017-03-31 19:09:37.000000000 +0000 +++ xserver-xorg-video-intel-2.99.917+git1704102223.b57abe2~y~padoka0/src/sna/sna_display.c 2017-04-11 01:23:16.000000000 +0000 @@ -3292,10 +3292,11 @@ static int plane_details(struct sna *sna, struct plane *p) { +#define N_STACK_PROPS 32 /* must be a multiple of 2 */ struct local_mode_obj_get_properties arg; - uint64_t stack_props[24]; + uint64_t stack_props[N_STACK_PROPS + N_STACK_PROPS/2]; uint32_t *props = (uint32_t *)stack_props; - uint64_t *values = stack_props + 8; + uint64_t *values = props + N_STACK_PROPS; int i, type = DRM_PLANE_TYPE_OVERLAY; memset(&arg, 0, sizeof(struct local_mode_obj_get_properties)); @@ -3304,7 +3305,7 @@ arg.props_ptr = (uintptr_t)props; arg.prop_values_ptr = (uintptr_t)values; - arg.count_props = 16; + arg.count_props = N_STACK_PROPS; if (drmIoctl(sna->kgem.fd, LOCAL_IOCTL_MODE_OBJ_GETPROPERTIES, &arg)) return -1; @@ -3312,7 +3313,7 @@ DBG(("%s: object %d (type %x) has %d props\n", __FUNCTION__, p->id, LOCAL_MODE_OBJECT_PLANE, arg.count_props)); - if (arg.count_props > 16) { + if (arg.count_props > N_STACK_PROPS) { props = malloc(2*sizeof(uint64_t)*arg.count_props); if (props == NULL) return -1; @@ -3385,6 +3386,7 @@ DBG(("%s: plane=%d type=%d\n", __FUNCTION__, p->id, type)); return type; +#undef N_STACK_PROPS } static void add_sprite_plane(struct sna_crtc *crtc,