Hello community, here is the log from the commit of package xf86-video-nouveau for openSUSE:Factory checked in at 2017-04-28 09:11:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xf86-video-nouveau (Old) and /work/SRC/openSUSE:Factory/.xf86-video-nouveau.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xf86-video-nouveau" Fri Apr 28 09:11:19 2017 rev:14 rq:490015 version:1.0.15 Changes: -------- --- /work/SRC/openSUSE:Factory/xf86-video-nouveau/xf86-video-nouveau.changes 2017-04-18 13:47:08.218166465 +0200 +++ /work/SRC/openSUSE:Factory/.xf86-video-nouveau.new/xf86-video-nouveau.changes 2017-04-28 09:11:21.146588350 +0200 @@ -1,0 +2,8 @@ +Sun Apr 23 12:19:22 UTC 2017 - sndir...@suse.com + +- Update to version 1.0.15: + * fix null pointer deref when building against >=libdrm 2.4.78 + * Add Pascal family support, identical to Maxwell + * Do not register hotplug without RandR + +------------------------------------------------------------------- Old: ---- xf86-video-nouveau-1.0.14.tar.bz2 New: ---- xf86-video-nouveau-1.0.15.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xf86-video-nouveau.spec ++++++ --- /var/tmp/diff_new_pack.B47sFk/_old 2017-04-28 09:11:21.850489094 +0200 +++ /var/tmp/diff_new_pack.B47sFk/_new 2017-04-28 09:11:21.850489094 +0200 @@ -26,7 +26,7 @@ BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(xorg-macros) Url: http://nouveau.freedesktop.org/wiki/ -Version: 1.0.14 +Version: 1.0.15 Release: 0 Summary: Accelerated Open Source driver for nVidia cards License: MIT ++++++ xf86-video-nouveau-1.0.14.tar.bz2 -> xf86-video-nouveau-1.0.15.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/ChangeLog new/xf86-video-nouveau-1.0.15/ChangeLog --- old/xf86-video-nouveau-1.0.14/ChangeLog 2017-03-13 05:06:52.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/ChangeLog 2017-04-21 20:47:37.000000000 +0200 @@ -1,3 +1,60 @@ +commit a7c190e0c230ed2d5e047ed6aba12d71a4866950 +Author: Lyude <ly...@redhat.com> +Date: Fri Apr 21 14:41:17 2017 -0400 + + Bump version to 1.0.15 + + Signed-off-by: Lyude <ly...@redhat.com> + +commit 3047e99a641d2b8720371aae292750206f5e91fc +Author: Ben Skeggs <bske...@redhat.com> +Date: Thu Apr 20 15:57:33 2017 +1000 + + fix null pointer deref when building against >=libdrm 2.4.78 + + A new pointer got added to drmEventContext. + + As a result of us both: + - Setting drmEventContext.version to "latest" AND + - Not zeroing the struct + + We end up thwarting libdrm's compatibility checks, resulting in + libdrm choosing to call through an invalid pointer. + + Fix this by zeroing the struct. + + Signed-off-by: Ben Skeggs <bske...@redhat.com> + +commit e9418e434311336e905b70553a5ed740838d90ad +Author: Mariusz Bialonczyk <ma...@skyboo.net> +Date: Wed Mar 29 22:07:50 2017 +0200 + + Do not register hotplug without RandR + + When using Xinerama, RandR is automatically disabled, and calling RR + routines will trigger an assert() because the RR keys/resources are + not set, leading to an Xserver abort. + + Hotplug makes little sense without RandR, so no need to install a + udev monitor if RandR is not available. + + Ported from xf86-video-intel commit + 1a489142c8e6a4828348cc9afbd0f430d3b1e2d8, original work by: + Chris Wilson <ch...@chris-wilson.co.uk> + + Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98383 + Signed-off-by: Mariusz Bialonczyk <ma...@skyboo.net> + Acked-by: Ilia Mirkin <imir...@alum.mit.edu> + +commit e472b47d15634a864c8c981ed588d882aceaf26b +Author: Ilia Mirkin <imir...@alum.mit.edu> +Date: Tue Mar 21 21:25:33 2017 -0400 + + Add Pascal family support, identical to Maxwell + + Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> + Tested-by: Lyude <ly...@redhat.com> + commit b71de83b7fae0abeb311251e6144294d319062cf Author: Lyude <ly...@redhat.com> Date: Tue Mar 7 18:44:43 2017 -0500 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/configure new/xf86-video-nouveau-1.0.15/configure --- old/xf86-video-nouveau-1.0.14/configure 2017-03-13 05:06:44.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/configure 2017-04-21 20:47:31.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for xf86-video-nouveau 1.0.14. +# Generated by GNU Autoconf 2.69 for xf86-video-nouveau 1.0.15. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='xf86-video-nouveau' PACKAGE_TARNAME='xf86-video-nouveau' -PACKAGE_VERSION='1.0.14' -PACKAGE_STRING='xf86-video-nouveau 1.0.14' +PACKAGE_VERSION='1.0.15' +PACKAGE_STRING='xf86-video-nouveau 1.0.15' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' PACKAGE_URL='' @@ -1372,7 +1372,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xf86-video-nouveau 1.0.14 to adapt to many kinds of systems. +\`configure' configures xf86-video-nouveau 1.0.15 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1443,7 +1443,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xf86-video-nouveau 1.0.14:";; + short | recursive ) echo "Configuration of xf86-video-nouveau 1.0.15:";; esac cat <<\_ACEOF @@ -1586,7 +1586,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xf86-video-nouveau configure 1.0.14 +xf86-video-nouveau configure 1.0.15 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1910,7 +1910,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xf86-video-nouveau $as_me 1.0.14, which was +It was created by xf86-video-nouveau $as_me 1.0.15, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2799,7 +2799,7 @@ # Define the identity of the package. PACKAGE='xf86-video-nouveau' - VERSION='1.0.14' + VERSION='1.0.15' cat >>confdefs.h <<_ACEOF @@ -20727,7 +20727,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xf86-video-nouveau $as_me 1.0.14, which was +This file was extended by xf86-video-nouveau $as_me 1.0.15, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -20793,7 +20793,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -xf86-video-nouveau config.status 1.0.14 +xf86-video-nouveau config.status 1.0.15 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/configure.ac new/xf86-video-nouveau-1.0.15/configure.ac --- old/xf86-video-nouveau-1.0.14/configure.ac 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/configure.ac 2017-04-21 20:47:24.000000000 +0200 @@ -22,7 +22,7 @@ AC_PREREQ([2.60]) AC_INIT([xf86-video-nouveau], - [1.0.14], + [1.0.15], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xf86-video-nouveau]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/drmmode_display.c new/xf86-video-nouveau-1.0.15/src/drmmode_display.c --- old/xf86-video-nouveau-1.0.14/src/drmmode_display.c 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/drmmode_display.c 2017-04-21 20:47:24.000000000 +0200 @@ -1433,7 +1433,7 @@ unsigned int crtcs_needed = 0; int crtcshift; - drmmode = xnfalloc(sizeof *drmmode); + drmmode = xnfcalloc(sizeof(*drmmode), 1); drmmode->fd = fd; drmmode->fb_id = 0; @@ -1556,6 +1556,15 @@ } #endif +static bool has_randr(void) +{ +#if HAS_DIXREGISTERPRIVATEKEY + return dixPrivateKeyRegistered(rrPrivKey); +#else + return *rrPrivKey; +#endif +} + static void drmmode_uevent_init(ScrnInfoPtr scrn) { @@ -1564,6 +1573,12 @@ struct udev *u; struct udev_monitor *mon; + /* RandR will be disabled if Xinerama is active, and so generating + * RR hotplug events is then forbidden. + */ + if (!has_randr()) + return; + u = udev_new(); if (!u) return; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/nouveau_copy.c new/xf86-video-nouveau-1.0.15/src/nouveau_copy.c --- old/xf86-video-nouveau-1.0.14/src/nouveau_copy.c 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/nouveau_copy.c 2017-04-21 20:47:24.000000000 +0200 @@ -42,6 +42,7 @@ int engine; Bool (*init)(NVPtr); } methods[] = { + { 0xc1b5, 0, nouveau_copya0b5_init }, { 0xc0b5, 0, nouveau_copya0b5_init }, { 0xb0b5, 0, nouveau_copya0b5_init }, { 0xa0b5, 0, nouveau_copya0b5_init }, @@ -84,6 +85,7 @@ break; case NV_KEPLER: case NV_MAXWELL: + case NV_PASCAL: ret = nouveau_object_new(&pNv->dev->object, 0, NOUVEAU_FIFO_CHANNEL_CLASS, &(struct nve0_fifo) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/nouveau_exa.c new/xf86-video-nouveau-1.0.15/src/nouveau_exa.c --- old/xf86-video-nouveau-1.0.14/src/nouveau_exa.c 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/nouveau_exa.c 2017-04-21 20:47:24.000000000 +0200 @@ -515,6 +515,7 @@ case NV_FERMI: case NV_KEPLER: case NV_MAXWELL: + case NV_PASCAL: exa->CheckComposite = NVC0EXACheckComposite; exa->PrepareComposite = NVC0EXAPrepareComposite; exa->Composite = NVC0EXAComposite; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/nv_accel_common.c new/xf86-video-nouveau-1.0.15/src/nv_accel_common.c --- old/xf86-video-nouveau-1.0.14/src/nv_accel_common.c 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/nv_accel_common.c 2017-04-21 20:47:24.000000000 +0200 @@ -723,6 +723,7 @@ case NV_FERMI: case NV_KEPLER: case NV_MAXWELL: + case NV_PASCAL: INIT_CONTEXT_OBJECT(3D_NVC0); break; case NV_TESLA: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/nv_driver.c new/xf86-video-nouveau-1.0.15/src/nv_driver.c --- old/xf86-video-nouveau-1.0.14/src/nv_driver.c 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/nv_driver.c 2017-04-21 20:47:24.000000000 +0200 @@ -391,6 +391,7 @@ case 0x100: case 0x110: case 0x120: + case 0x130: break; default: xf86DrvMsg(-1, X_ERROR, "Unknown chipset: NV%02X\n", chipset); @@ -945,6 +946,9 @@ case 0x120: pNv->Architecture = NV_MAXWELL; break; + case 0x130: + pNv->Architecture = NV_PASCAL; + break; default: return FALSE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/nv_type.h new/xf86-video-nouveau-1.0.15/src/nv_type.h --- old/xf86-video-nouveau-1.0.14/src/nv_type.h 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/nv_type.h 2017-04-21 20:47:24.000000000 +0200 @@ -23,6 +23,7 @@ #define NV_FERMI 0xc0 #define NV_KEPLER 0xe0 #define NV_MAXWELL 0x110 +#define NV_PASCAL 0x130 struct xf86_platform_device; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/xf86-video-nouveau-1.0.14/src/nvc0_accel.c new/xf86-video-nouveau-1.0.15/src/nvc0_accel.c --- old/xf86-video-nouveau-1.0.14/src/nvc0_accel.c 2017-03-13 05:06:36.000000000 +0100 +++ new/xf86-video-nouveau-1.0.15/src/nvc0_accel.c 2017-04-21 20:47:24.000000000 +0200 @@ -250,6 +250,12 @@ } else if (pNv->dev->chipset < 0x130) { class = 0xb197; handle = 0x0000906e; + } else if (pNv->dev->chipset == 0x130) { + class = 0xc097; + handle = 0x0000906e; + } else if (pNv->dev->chipset < 0x140) { + class = 0xc197; + handle = 0x0000906e; } else { xf86DrvMsg(pScrn->scrnIndex, X_INFO, "No 3D acceleration support for NV%X\n",